summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Minche Li <mincheli@google.com> 2020-10-15 02:01:32 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2020-10-15 02:01:32 +0000
commit3d2d8826f0ea58c6618186f677ae3320288a839f (patch)
tree4435902d5b99679a9052247a48c575bd9da84edc
parente339e9fabe46c9f3245ebe418565b4ea4b9c5044 (diff)
parentb5f6720f9c97d577205289cf63566abc9c6b79a6 (diff)
Merge "Reset WindowMagnification when the density is changed"
-rw-r--r--packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationController.java4
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationControllerTest.java5
2 files changed, 6 insertions, 3 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationController.java b/packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationController.java
index c3474bb7ca57..340ca044a1ef 100644
--- a/packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationController.java
+++ b/packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationController.java
@@ -249,8 +249,8 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold
if ((configDiff & ActivityInfo.CONFIG_DENSITY) != 0) {
updateDimensions();
if (isWindowVisible()) {
- mWm.removeView(mMirrorView);
- createMirrorWindow();
+ deleteWindowMagnification();
+ enableWindowMagnification(Float.NaN, Float.NaN, Float.NaN);
}
} else if ((configDiff & ActivityInfo.CONFIG_ORIENTATION) != 0) {
onRotate();
diff --git a/packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationControllerTest.java
index 5f2fd697b86d..f1606c5660ed 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationControllerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationControllerTest.java
@@ -224,11 +224,12 @@ public class WindowMagnificationControllerTest extends SysuiTestCase {
@Test
- public void onDensityChanged_enabled_updateDimensionsAndLayout() {
+ public void onDensityChanged_enabled_updateDimensionsAndResetWindowMagnification() {
mInstrumentation.runOnMainSync(() -> {
mWindowMagnificationController.enableWindowMagnification(Float.NaN, Float.NaN,
Float.NaN);
Mockito.reset(mWindowManager);
+ Mockito.reset(mMirrorWindowControl);
});
mInstrumentation.runOnMainSync(() -> {
@@ -237,7 +238,9 @@ public class WindowMagnificationControllerTest extends SysuiTestCase {
verify(mResources, atLeastOnce()).getDimensionPixelSize(anyInt());
verify(mWindowManager).removeView(any());
+ verify(mMirrorWindowControl).destroyControl();
verify(mWindowManager).addView(any(), any());
+ verify(mMirrorWindowControl).showControl();
}
@Test