From 66215994e80d4dc290daabeed7fe69225178bb61 Mon Sep 17 00:00:00 2001 From: Winson Chung Date: Wed, 17 Jun 2020 22:19:52 -0700 Subject: [PATCH] Ensure movement bounds for shift account for current bounds Bug: 159250094 Test: Resize pip near the shelf offset area and change the shelf offset Change-Id: I5ef13b1518a79b9f46a15ae448bd674ac1cb4d3c --- .../com/android/systemui/pip/phone/PipTouchHandler.java | 7 ++++--- .../src/com/android/systemui/pip/phone/PipTouchState.java | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/pip/phone/PipTouchHandler.java b/packages/SystemUI/src/com/android/systemui/pip/phone/PipTouchHandler.java index 2f9b29d137441..457d3883c5e53 100644 --- a/packages/SystemUI/src/com/android/systemui/pip/phone/PipTouchHandler.java +++ b/packages/SystemUI/src/com/android/systemui/pip/phone/PipTouchHandler.java @@ -467,9 +467,9 @@ public class PipTouchHandler { // touching the screen } else { final boolean isExpanded = mMenuState == MENU_STATE_FULL && willResizeMenu(); - final Rect toMovementBounds = isExpanded - ? new Rect(expandedMovementBounds) - : new Rect(normalMovementBounds); + final Rect toMovementBounds = new Rect(); + mSnapAlgorithm.getMovementBounds(curBounds, insetBounds, + toMovementBounds, mIsImeShowing ? mImeHeight : 0); final int prevBottom = mMovementBounds.bottom - mMovementBoundsExtraOffsets; final int toBottom = toMovementBounds.bottom < toMovementBounds.top ? toMovementBounds.bottom @@ -1039,6 +1039,7 @@ public class PipTouchHandler { pw.println(innerPrefix + "mShelfHeight=" + mShelfHeight); pw.println(innerPrefix + "mSavedSnapFraction=" + mSavedSnapFraction); pw.println(innerPrefix + "mEnableDragToEdgeDismiss=" + mEnableDismissDragToEdge); + pw.println(innerPrefix + "mMovementBoundsExtraOffsets=" + mMovementBoundsExtraOffsets); mTouchState.dump(pw, innerPrefix); mMotionHelper.dump(pw, innerPrefix); } diff --git a/packages/SystemUI/src/com/android/systemui/pip/phone/PipTouchState.java b/packages/SystemUI/src/com/android/systemui/pip/phone/PipTouchState.java index 4be0c157de8ea..132c04d381dd2 100644 --- a/packages/SystemUI/src/com/android/systemui/pip/phone/PipTouchState.java +++ b/packages/SystemUI/src/com/android/systemui/pip/phone/PipTouchState.java @@ -31,7 +31,7 @@ import java.io.PrintWriter; * This keeps track of the touch state throughout the current touch gesture. */ public class PipTouchState { - private static final String TAG = "PipTouchHandler"; + private static final String TAG = "PipTouchState"; private static final boolean DEBUG = false; @VisibleForTesting