diff options
| author | 2021-09-08 12:02:49 +0000 | |
|---|---|---|
| committer | 2021-09-08 12:02:49 +0000 | |
| commit | caa65e4a70dd6b6a153081d69663d29d4cd5088b (patch) | |
| tree | 79b50cc71852955b8fe6b11aa2fdd0164a94c9dd | |
| parent | 7108950503b4ea653774217f98960ffc68f9d67d (diff) | |
| parent | b4fdc0e4ba0796eebb215be06782252d4110cce7 (diff) | |
Merge "Avoid applying window config from updating persistent config" into sc-v2-dev
| -rw-r--r-- | services/core/java/com/android/server/wm/ActivityTaskManagerService.java | 3 | ||||
| -rw-r--r-- | services/core/java/com/android/server/wm/DisplayContent.java | 3 |
2 files changed, 5 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java index 081c618b62aa..1652c3b2a9a7 100644 --- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java +++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java @@ -4066,6 +4066,9 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub { final long origId = Binder.clearCallingIdentity(); try { synchronized (mGlobalLock) { + // Window configuration is unrelated to persistent configuration (e.g. font scale, + // locale). Unset it to avoid affecting the current display configuration. + values.windowConfiguration.setToDefaults(); updateConfigurationLocked(values, null, false, true, userId, false /* deferResume */); } diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index 953cf174cde7..199159ee0580 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -5728,7 +5728,8 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp final Configuration currOverrideConfig = getRequestedOverrideConfiguration(); final int currRotation = currOverrideConfig.windowConfiguration.getRotation(); final int overrideRotation = overrideConfiguration.windowConfiguration.getRotation(); - if (currRotation != ROTATION_UNDEFINED && currRotation != overrideRotation) { + if (currRotation != ROTATION_UNDEFINED && overrideRotation != ROTATION_UNDEFINED + && currRotation != overrideRotation) { applyRotationAndFinishFixedRotation(currRotation, overrideRotation); } mCurrentOverrideConfigurationChanges = currOverrideConfig.diff(overrideConfiguration); |