diff options
| author | 2020-10-15 02:01:32 +0000 | |
|---|---|---|
| committer | 2020-10-15 02:01:32 +0000 | |
| commit | 3d2d8826f0ea58c6618186f677ae3320288a839f (patch) | |
| tree | 4435902d5b99679a9052247a48c575bd9da84edc | |
| parent | e339e9fabe46c9f3245ebe418565b4ea4b9c5044 (diff) | |
| parent | b5f6720f9c97d577205289cf63566abc9c6b79a6 (diff) | |
Merge "Reset WindowMagnification when the density is changed"
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 |