From 93ad57bdd9642f8e7227f91a482f19371a790ffb Mon Sep 17 00:00:00 2001 From: Matt Pietal Date: Wed, 1 May 2024 17:06:53 +0000 Subject: Remove overscroll on keyguard when swiping up then down This very specific set of gestures can sometimes cause the notifications to overlap the lock icon/udfps icon after the user stops dragging. For the migration effort, it was safer to remove this small overscroll for the drag up/down case then continue to support it. There is no loss of functionality. Fixes: 329399801 Test: Swipe up slightly on lockscreen, then down Flag: ACONFIG com.android.systemui.migrate_clocks_to_blueprint TEAMFOOD Change-Id: Iba86a6f233fc563f556825a14d06fc2de394fff6 --- .../android/systemui/shade/NotificationPanelViewController.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java index 67211b11a32f..2850f5b6edde 100644 --- a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java +++ b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java @@ -3991,7 +3991,12 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump mExpandLatencyTracking = false; } float maxPanelHeight = getMaxPanelTransitionDistance(); - if (mHeightAnimator == null) { + if (mHeightAnimator == null && !MigrateClocksToBlueprint.isEnabled()) { + // MigrateClocksToBlueprint - There is an edge case where swiping up slightly, + // and then swiping down will trigger overscroll logic. Even without this flag + // enabled, the notifications can then run into UDFPS. At this point it is + // safer to remove overscroll for this one case to prevent overlap. + // Split shade has its own overscroll logic if (isTracking()) { float overExpansionPixels = Math.max(0, h - maxPanelHeight); -- cgit v1.2.3-59-g8ed1b