diff options
5 files changed, 18 insertions, 6 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/ListDumper.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/ListDumper.java index 52c5c3e08118..6be8a491eead 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/ListDumper.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/ListDumper.java @@ -55,15 +55,26 @@ public class ListDumper { interactionTracker.hasUserInteractedWith(entry.getKey())); if (entry instanceof GroupEntry) { GroupEntry ge = (GroupEntry) entry; + NotificationEntry summary = ge.getSummary(); + if (summary != null) { + dumpEntry(summary, + topEntryIndex + ":*", + childEntryIndent, + sb, + true, + includeRecordKeeping, + interactionTracker.hasUserInteractedWith(summary.getKey())); + } List<NotificationEntry> children = ge.getChildren(); for (int childIndex = 0; childIndex < children.size(); childIndex++) { - dumpEntry(children.get(childIndex), + NotificationEntry child = children.get(childIndex); + dumpEntry(child, topEntryIndex + "." + childIndex, childEntryIndent, sb, true, includeRecordKeeping, - interactionTracker.hasUserInteractedWith(entry.getKey())); + interactionTracker.hasUserInteractedWith(child.getKey())); } } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/PreparationCoordinator.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/PreparationCoordinator.java index a0379f46a2a9..bbb97d145b9f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/PreparationCoordinator.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/coordinator/PreparationCoordinator.java @@ -368,7 +368,7 @@ public class PreparationCoordinator implements Coordinator { private void freeNotifViews(NotificationEntry entry) { mViewBarn.removeViewForEntry(entry); - entry.setRow(null); + // TODO: clear the entry's row here, or even better, stop setting the row on the entry! mInflationStates.put(entry, STATE_UNINFLATED); } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerImpl.java index b9aa26f75c9b..86d263af88ea 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/GroupExpansionManagerImpl.java @@ -25,6 +25,7 @@ import com.android.systemui.statusbar.notification.collection.listbuilder.OnBefo import java.io.FileDescriptor; import java.io.PrintWriter; +import java.util.ArrayList; import java.util.HashSet; import java.util.Set; @@ -91,7 +92,7 @@ public class GroupExpansionManagerImpl implements GroupExpansionManager, Coordin @Override public void collapseGroups() { - for (NotificationEntry entry : mExpandedGroups) { + for (NotificationEntry entry : new ArrayList<>(mExpandedGroups)) { setGroupExpanded(entry, false); } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowController.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowController.java index 10e8b140b3e1..3d35d0e3a195 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRowController.java @@ -245,7 +245,7 @@ public class ExpandableNotificationRowController implements NotifViewController public void addChildAt(NodeController child, int index) { ExpandableNotificationRow childView = (ExpandableNotificationRow) child.getView(); - mView.addChildNotification((ExpandableNotificationRow) child.getView()); + mView.addChildNotification((ExpandableNotificationRow) child.getView(), index); mListContainer.notifyGroupChildAdded(childView); } 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 33ce32a56f92..b9f024121693 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 @@ -4628,7 +4628,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable } private void ensureRemovedFromTransientContainer(View v) { - if (v.getParent() == this && v instanceof SectionHeaderView) { + if (v.getParent() == this && v instanceof ExpandableView) { ExpandableView expandableView = (ExpandableView) v; ViewGroup transientContainer = expandableView.getTransientContainer(); // If the child is animating away, it will still have a parent, so |