From b6b7b5b4a8b6f14b8908d294452a20f0566fe356 Mon Sep 17 00:00:00 2001 From: Jeff DeCew Date: Wed, 28 Jun 2023 13:54:35 -0400 Subject: [PATCH] Reset swipe state on children rows, too. Fixes: 288809971 Test: repro with b/288404864 and close shade Change-Id: Ia802e1ef323245f0fa040f30abeaf026d7811f48 --- .../stack/NotificationStackScrollLayout.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java index 479fbdb348d0c..8063c8cfc6f36 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java @@ -5919,7 +5919,17 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable Trace.beginSection("NSSL.resetAllSwipeState()"); mSwipeHelper.resetTouchState(); for (int i = 0; i < getChildCount(); i++) { - mSwipeHelper.forceResetSwipeState(getChildAt(i)); + View child = getChildAt(i); + mSwipeHelper.forceResetSwipeState(child); + if (child instanceof ExpandableNotificationRow) { + ExpandableNotificationRow childRow = (ExpandableNotificationRow) child; + List grandchildren = childRow.getAttachedChildren(); + if (grandchildren != null) { + for (ExpandableNotificationRow grandchild : grandchildren) { + mSwipeHelper.forceResetSwipeState(grandchild); + } + } + } } updateContinuousShadowDrawing(); Trace.endSection();