diff --git a/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java b/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java index c4553123171..0ddc08ef1d9 100644 --- a/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java +++ b/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java @@ -93,6 +93,7 @@ public class ConnectedDeviceGroupController extends BasePreferenceController public void onStart() { if (mExternalDisplayUpdater != null) { mExternalDisplayUpdater.registerCallback(); + mExternalDisplayUpdater.refreshPreference(); } if (mBluetoothDeviceUpdater != null) { diff --git a/src/com/android/settings/connecteddevice/display/ExternalDisplayUpdater.java b/src/com/android/settings/connecteddevice/display/ExternalDisplayUpdater.java index 64dd7bb2fdf..01dc1daf370 100644 --- a/src/com/android/settings/connecteddevice/display/ExternalDisplayUpdater.java +++ b/src/com/android/settings/connecteddevice/display/ExternalDisplayUpdater.java @@ -55,7 +55,7 @@ public class ExternalDisplayUpdater { private final DisplayListener mListener = new DisplayListener() { @Override public void update(int displayId) { - scheduleUpdate(); + refreshPreference(); } }; @@ -91,8 +91,6 @@ public class ExternalDisplayUpdater { .launch(); return true; }); - - scheduleUpdate(); } /** @@ -151,7 +149,10 @@ public class ExternalDisplayUpdater { return null; } - private void scheduleUpdate() { + /** + * Updates preference, possibly removing it entirely. + */ + public void refreshPreference() { if (mInjector == null) { return; }