From 717ea2cdff2e278a7edc3cfc55c4eabc1b9bfb1c Mon Sep 17 00:00:00 2001 From: Vadim Tryshev Date: Wed, 31 Jan 2024 14:25:18 -0800 Subject: [PATCH] Starting measuring displacement from the edge of the slop zone This makes displacement calculations robust against skipped MOVE events Test: presubmit Bug: 297377792 Flag: N/A Change-Id: I6c2c3486139baa5e456c6787c2afc7b3f7fe7cfd --- .../quickstep/inputconsumers/OtherActivityInputConsumer.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java index c8c7dc2597..0f8cebae77 100644 --- a/quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java +++ b/quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java @@ -154,6 +154,7 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC mSquaredTouchSlop = mDeviceState.getSquaredTouchSlop(); mPassedPilferInputSlop = mPassedWindowMoveSlop = continuingPreviousGesture; + mStartDisplacement = continuingPreviousGesture ? 0 : -mTouchSlop; mDisableHorizontalSwipe = !mPassedPilferInputSlop && disableHorizontalSwipe; mRotationTouchHelper = mDeviceState.getRotationTouchHelper(); } @@ -280,7 +281,7 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC if (mGestureState.isTrackpadGesture() || Math.abs(displacement) > mTouchSlop) { mPassedWindowMoveSlop = true; - mStartDisplacement = Math.min(displacement, -mTouchSlop); + mStartDisplacement = -mTouchSlop; } } } @@ -336,7 +337,7 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC } if (!mPassedWindowMoveSlop) { mPassedWindowMoveSlop = true; - mStartDisplacement = Math.min(displacement, -mTouchSlop); + mStartDisplacement = -mTouchSlop; } notifyGestureStarted(isLikelyToStartNewTask); }