Merge "Reset WindowMagnification when the density is changed"

This commit is contained in:
Minche Li
2020-10-15 02:01:32 +00:00
committed by Android (Google) Code Review
2 changed files with 6 additions and 3 deletions

View File

@@ -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();

View File

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