Merge "Fix setApplicationNightMode did not persist night mode." into sc-dev

This commit is contained in:
Wei Sheng Shih
2021-07-14 01:34:41 +00:00
committed by Android (Google) Code Review
2 changed files with 3 additions and 12 deletions

View File

@@ -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 {

View File

@@ -545,8 +545,8 @@ public abstract class ConfigurationContainer<E extends 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<E extends ConfigurationContainer> {
return true;
}
int getNightMode() {
return mFullConfiguration.uiMode & Configuration.UI_MODE_NIGHT_MASK;
}
public boolean isActivityTypeDream() {
return getActivityType() == ACTIVITY_TYPE_DREAM;
}