Fixed the heads up disspearing bug for real

When children become unisolated, they could be stuck in heads up mode.

Change-Id: I18227ae6743abec8fd6dc75916c67549f9e0aac4
Fixes: 30120962
This commit is contained in:
Selim Cinek
2016-07-14 11:16:58 -07:00
parent 94c2d82f4f
commit 76e813c155

View File

@@ -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);
}
}
}
}
}