diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java index 0165602522e0..71b349f3c59a 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java @@ -2654,6 +2654,10 @@ public class NotificationStackScrollLayout extends ViewGroup type = row.wasJustClicked() ? AnimationEvent.ANIMATION_TYPE_HEADS_UP_DISAPPEAR_CLICK : AnimationEvent.ANIMATION_TYPE_HEADS_UP_DISAPPEAR; + if (row.isChildInGroup()) { + // We can otherwise get stuck in there if it was just isolated + row.setHeadsupDisappearRunning(false); + } } else { StackViewState viewState = mCurrentStackScrollState.getViewStateForView(row); if (viewState == null) { @@ -3150,7 +3154,13 @@ public class NotificationStackScrollLayout extends ViewGroup for (int i = 0; i < getChildCount(); i++) { View view = getChildAt(i); if (view instanceof ExpandableNotificationRow) { - ((ExpandableNotificationRow) view).setHeadsupDisappearRunning(false); + ExpandableNotificationRow row = (ExpandableNotificationRow) view; + row.setHeadsupDisappearRunning(false); + if (row.isSummaryWithChildren()) { + for (ExpandableNotificationRow child : row.getNotificationChildren()) { + child.setHeadsupDisappearRunning(false); + } + } } } } |