summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Shawn Lee <syeonlee@google.com> 2023-03-14 06:52:17 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2023-03-14 06:52:17 +0000
commit7a2f650ad3fd9e82c446b8981e33bcd90ba164e0 (patch)
treeca142bd9dc201638214712ce3d6f9f636626c0c2
parent95bbf598d6237424ec4507eeb013f68411e18de5 (diff)
parent6c78bab2e3e34ea5a5fff2b7653169d4ddc12e87 (diff)
Merge "Prevent flings after motion gestures on fully expanded keyguard" into tm-qpr-dev am: 6c78bab2e3
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21895667 Change-Id: I573e2f9497d9073448c49ea0e45f82b83ef57467 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
index 6b2d7443392d..fdaeeee26812 100644
--- a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
+++ b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
@@ -3508,12 +3508,15 @@ public final class NotificationPanelViewController implements Dumpable {
}
private void endMotionEvent(MotionEvent event, float x, float y, boolean forceCancel) {
+ // don't fling while in keyguard to avoid jump in shade expand animation
+ boolean fullyExpandedInKeyguard = mBarState == KEYGUARD && mExpandedFraction >= 1.0;
mTrackingPointer = -1;
mAmbientState.setSwipingUp(false);
- if ((mTracking && mTouchSlopExceeded) || Math.abs(x - mInitialExpandX) > mTouchSlop
+ if (!fullyExpandedInKeyguard && ((mTracking && mTouchSlopExceeded)
+ || Math.abs(x - mInitialExpandX) > mTouchSlop
|| Math.abs(y - mInitialExpandY) > mTouchSlop
|| (!isFullyExpanded() && !isFullyCollapsed())
- || event.getActionMasked() == MotionEvent.ACTION_CANCEL || forceCancel) {
+ || event.getActionMasked() == MotionEvent.ACTION_CANCEL || forceCancel)) {
mVelocityTracker.computeCurrentVelocity(1000);
float vel = mVelocityTracker.getYVelocity();
float vectorVel = (float) Math.hypot(
@@ -3561,9 +3564,9 @@ public final class NotificationPanelViewController implements Dumpable {
if (mUpdateFlingOnLayout) {
mUpdateFlingVelocity = vel;
}
- } else if (!mCentralSurfaces.isBouncerShowing()
+ } else if (fullyExpandedInKeyguard || (!mCentralSurfaces.isBouncerShowing()
&& !mAlternateBouncerInteractor.isVisibleState()
- && !mKeyguardStateController.isKeyguardGoingAway()) {
+ && !mKeyguardStateController.isKeyguardGoingAway())) {
onEmptySpaceClick();
onTrackingStopped(true);
}