Apply the correct theme to DockPreference
Set the preference context to apply correct theme to preference.
Bug: 110016611
Test: m -j SettingsRoboTests RunSettingsRoboTests
Change-Id: Ifb680fdc0ff40f86886f91320b4187e9873efbf4
diff --git a/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java b/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java
index aa0b6cd..654ea72 100644
--- a/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java
+++ b/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java
@@ -76,9 +76,11 @@
mPreferenceGroup = (PreferenceGroup) screen.findPreference(KEY);
mPreferenceGroup.setVisible(false);
- mBluetoothDeviceUpdater.setPrefContext(screen.getContext());
+ final Context context = screen.getContext();
+ mBluetoothDeviceUpdater.setPrefContext(context);
mBluetoothDeviceUpdater.forceUpdate();
- mConnectedUsbDeviceUpdater.initUsbPreference(screen.getContext());
+ mConnectedUsbDeviceUpdater.initUsbPreference(context);
+ mConnectedDockUpdater.setPreferenceContext(context);
mConnectedDockUpdater.forceUpdate();
}
}
diff --git a/src/com/android/settings/connecteddevice/SavedDeviceGroupController.java b/src/com/android/settings/connecteddevice/SavedDeviceGroupController.java
index 4bc9cdd..6f9b7ac 100644
--- a/src/com/android/settings/connecteddevice/SavedDeviceGroupController.java
+++ b/src/com/android/settings/connecteddevice/SavedDeviceGroupController.java
@@ -75,8 +75,11 @@
if (isAvailable()) {
mPreferenceGroup = (PreferenceGroup) screen.findPreference(KEY);
mPreferenceGroup.setVisible(false);
- mBluetoothDeviceUpdater.setPrefContext(screen.getContext());
+
+ final Context context = screen.getContext();
+ mBluetoothDeviceUpdater.setPrefContext(context);
mBluetoothDeviceUpdater.forceUpdate();
+ mSavedDockUpdater.setPreferenceContext(context);
mSavedDockUpdater.forceUpdate();
}
}
diff --git a/src/com/android/settings/connecteddevice/dock/DockUpdater.java b/src/com/android/settings/connecteddevice/dock/DockUpdater.java
index 19ee732..99ac124 100644
--- a/src/com/android/settings/connecteddevice/dock/DockUpdater.java
+++ b/src/com/android/settings/connecteddevice/dock/DockUpdater.java
@@ -15,6 +15,7 @@
*/
package com.android.settings.connecteddevice.dock;
+import android.annotation.NonNull;
import android.content.Context;
/**
@@ -40,4 +41,10 @@
*/
default void forceUpdate() {
}
+
+ /**
+ * Set the context to generate the {@link Preference}, so it could get the correct theme.
+ */
+ default void setPreferenceContext(@NonNull Context preferenceContext) {
+ }
}