diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java index 090a01aa6f1b0..04c01736431da 100644 --- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java +++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java @@ -6471,12 +6471,7 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub { Slog.w(TAG, "Override application configuration: cannot find pid " + mPid); return; } - if (wpc.getNightMode() == mNightMode) { - return; - } - if (!wpc.setOverrideNightMode(mNightMode)) { - return; - } + wpc.setOverrideNightMode(mNightMode); wpc.updateNightModeForAllActivities(mNightMode); mPackageConfigPersister.updateFromImpl(wpc.mName, wpc.mUserId, this); } finally { diff --git a/services/core/java/com/android/server/wm/ConfigurationContainer.java b/services/core/java/com/android/server/wm/ConfigurationContainer.java index 8fbe1775fd19f..d52e9b608cdb6 100644 --- a/services/core/java/com/android/server/wm/ConfigurationContainer.java +++ b/services/core/java/com/android/server/wm/ConfigurationContainer.java @@ -545,8 +545,8 @@ public abstract class ConfigurationContainer { * @return true if the nightMode has been changed. */ public boolean setOverrideNightMode(int nightMode) { - final int currentUiMode = mFullConfiguration.uiMode; - final int currentNightMode = getNightMode(); + final int currentUiMode = mRequestedOverrideConfiguration.uiMode; + final int currentNightMode = currentUiMode & Configuration.UI_MODE_NIGHT_MASK; final int validNightMode = nightMode & Configuration.UI_MODE_NIGHT_MASK; if (currentNightMode == validNightMode) { return false; @@ -558,10 +558,6 @@ public abstract class ConfigurationContainer { return true; } - int getNightMode() { - return mFullConfiguration.uiMode & Configuration.UI_MODE_NIGHT_MASK; - } - public boolean isActivityTypeDream() { return getActivityType() == ACTIVITY_TYPE_DREAM; }