Inaccurate auto dark theme time
When changing the start/end custom dark theme time,
The time in the display settings page does not change
Test: settings test
Fixes: 148150281
Change-Id: I4e54797df14cb926f59d50c26e8da160b356f2c0
diff --git a/src/com/android/settings/display/darkmode/DarkModeObserver.java b/src/com/android/settings/display/darkmode/DarkModeObserver.java
index 4d0d7c5..1482a2a 100644
--- a/src/com/android/settings/display/darkmode/DarkModeObserver.java
+++ b/src/com/android/settings/display/darkmode/DarkModeObserver.java
@@ -49,12 +49,7 @@
super.onChange(selfChange, uri);
final String setting = uri == null ? null : uri.getLastPathSegment();
if (setting != null && mCallback != null) {
- switch (setting) {
- case Settings.Secure.UI_NIGHT_MODE:
- mCallback.run();
- break;
- default:
- }
+ mCallback.run();
}
}
};
@@ -69,7 +64,16 @@
callback.run();
mCallback = callback;
final Uri uri = Settings.Secure.getUriFor(Settings.Secure.UI_NIGHT_MODE);
- mContext.getContentResolver().registerContentObserver(uri, false, mContentObserver);
+ final Uri customStart =
+ Settings.Secure.getUriFor(Settings.Secure.DARK_THEME_CUSTOM_START_TIME);
+ final Uri customEnd =
+ Settings.Secure.getUriFor(Settings.Secure.DARK_THEME_CUSTOM_END_TIME);
+ mContext.getContentResolver()
+ .registerContentObserver(uri, false, mContentObserver);
+ mContext.getContentResolver()
+ .registerContentObserver(customStart, false, mContentObserver);
+ mContext.getContentResolver()
+ .registerContentObserver(customEnd, false, mContentObserver);
final IntentFilter batteryFilter = new IntentFilter();
batteryFilter.addAction(PowerManager.ACTION_POWER_SAVE_MODE_CHANGED);
mContext.registerReceiver(