From 616537d0e2816afad36280bf2b712bf1018c61c5 Mon Sep 17 00:00:00 2001 From: Riddle Hsu Date: Wed, 9 Jun 2021 04:30:15 +0800 Subject: [PATCH] Fix inverted vertical offset of entering rotated PiP In rotated coordinates, the vertical and horizontal are different directions. Otherwise the end of animation doesn't match the destination position. Bug: 175836469 Test: setSourceRectHint with non-zero left. Change-Id: Ia5e282c0a1bab9cbf77e964b4a4bc8ea4514cfb9 --- .../com/android/wm/shell/pip/PipSurfaceTransactionHelper.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipSurfaceTransactionHelper.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipSurfaceTransactionHelper.java index 48a15d8686b45..e05b0c2855585 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipSurfaceTransactionHelper.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipSurfaceTransactionHelper.java @@ -149,10 +149,10 @@ public class PipSurfaceTransactionHelper { // Shrink bounds (expand insets) in destination orientation. if (clockwise) { positionX -= insets.top * scale; - positionY -= insets.left * scale; + positionY += insets.left * scale; } else { positionX += insets.top * scale; - positionY += insets.left * scale; + positionY -= insets.left * scale; } } mTmpTransform.setScale(scale, scale);