Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3f75d2fd authored by Hiroki Sato's avatar Hiroki Sato
Browse files

Fix rotation bounds calculation in WindowMagnificationControllerTest

On display WxH, a point (x,y) after 90 degree rotation is (y, W-x) in a
new coordinate.

Bug: 203361026
Test: atest com.android.systemui.accessibility.WindowMagnificationControllerTest#onOrientationChanged_enabled_updateDisplayRotationAndCenterStayAtSamePosition
Change-Id: I6fbe248873cd49a3ec52a56a060ade2620fe8710
parent 6adeab2b
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -278,6 +278,7 @@ public class WindowMagnificationControllerTest extends SysuiTestCase {
        when(mContext.getDisplay()).thenReturn(display);
        final Rect windowBounds = new Rect(mWindowManager.getCurrentWindowMetrics().getBounds());
        final float center = Math.min(windowBounds.exactCenterX(), windowBounds.exactCenterY());
        final float displayWidth = windowBounds.width();
        final PointF magnifiedCenter = new PointF(center, center + 5f);
        mInstrumentation.runOnMainSync(() -> {
            mWindowMagnificationController.enableWindowMagnification(Float.NaN, magnifiedCenter.x,
@@ -295,7 +296,8 @@ public class WindowMagnificationControllerTest extends SysuiTestCase {
                ActivityInfo.CONFIG_ORIENTATION));

        assertEquals(newRotation, mWindowMagnificationController.mRotation);
        final PointF expectedCenter = new PointF(magnifiedCenter.y, magnifiedCenter.x);
        final PointF expectedCenter = new PointF(magnifiedCenter.y,
                displayWidth - magnifiedCenter.x);
        final PointF actualCenter = new PointF(mWindowMagnificationController.getCenterX(),
                mWindowMagnificationController.getCenterY());
        assertEquals(expectedCenter, actualCenter);