diff options
author | 2019-08-20 08:40:43 -0700 | |
---|---|---|
committer | 2019-08-20 08:40:43 -0700 | |
commit | dbc35a48735c96ede30e99d61f754d97cbf11d65 (patch) | |
tree | 8039a67c3a99f5beee1f8e38a994e12efce9189f | |
parent | 3ed496a19df323dbe25bca8d90e91a19124f3155 (diff) | |
parent | 90706e5e4ac0793abb0b51b3b33f131f07e254d3 (diff) |
Merge "Update bootanim theme flag on ui_night_mode change" into qt-qpr1-dev
am: 90706e5e4a
Change-Id: I36b0b8d16750c2cdca94263ae369c9533f8ab153
-rw-r--r-- | services/core/java/com/android/server/UiModeManagerService.java | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/services/core/java/com/android/server/UiModeManagerService.java b/services/core/java/com/android/server/UiModeManagerService.java index 30a356325ada..6b038979a98d 100644 --- a/services/core/java/com/android/server/UiModeManagerService.java +++ b/services/core/java/com/android/server/UiModeManagerService.java @@ -48,7 +48,6 @@ import android.os.ShellCallback; import android.os.ShellCommand; import android.os.SystemProperties; import android.os.UserHandle; -import android.os.UserManager; import android.provider.Settings.Secure; import android.service.dreams.Sandman; import android.service.vr.IVrManager; @@ -218,6 +217,15 @@ final class UiModeManagerService extends SystemService { } }; + private final ContentObserver mDarkThemeObserver = new ContentObserver(mHandler) { + @Override + public void onChange(boolean selfChange, Uri uri) { + final int mode = Secure.getIntForUser(getContext().getContentResolver(), + Secure.UI_NIGHT_MODE, mNightMode, 0); + SystemProperties.set(SYSTEM_PROPERTY_DEVICE_THEME, Integer.toString(mode)); + } + }; + @Override public void onSwitchUser(int userHandle) { super.onSwitchUser(userHandle); @@ -293,6 +301,9 @@ final class UiModeManagerService extends SystemService { IntentFilter filter = new IntentFilter(); filter.addAction(Intent.ACTION_USER_SWITCHED); context.registerReceiver(new UserSwitchedReceiver(), filter, null, mHandler); + + context.getContentResolver().registerContentObserver(Secure.getUriFor(Secure.UI_NIGHT_MODE), + false, mDarkThemeObserver, 0); } // Records whether setup wizard has happened or not and adds an observer for this user if not. @@ -417,11 +428,6 @@ final class UiModeManagerService extends SystemService { if (!mCarModeEnabled) { Secure.putIntForUser(getContext().getContentResolver(), Secure.UI_NIGHT_MODE, mode, user); - - if (UserManager.get(getContext()).isPrimaryUser()) { - SystemProperties.set(SYSTEM_PROPERTY_DEVICE_THEME, - Integer.toString(mode)); - } } mNightMode = mode; |