From 53f8e7d5de0ff1672070c3cb38391f58dc58c2fb Mon Sep 17 00:00:00 2001 From: Selim Cinek Date: Fri, 25 Mar 2016 02:28:01 -0700 Subject: [PATCH] Fixed a bug with the number of notifications visible on lockscreen It also accounted for invisible groups. Bug: 24866646 Change-Id: I97de1468bdaaafbdbe69de5d1599555d5cf8f3f7 --- .../statusbar/phone/NotificationPanelView.java | 10 ++++++++++ .../systemui/statusbar/phone/PhoneStatusBar.java | 1 + 2 files changed, 11 insertions(+) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java index 560dbac03b6d1..d9a0f432b64db 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java @@ -202,6 +202,7 @@ public class NotificationPanelView extends PanelView implements notifyBarPanelExpansionChanged(); } }; + private NotificationGroupManager mGroupManager; public NotificationPanelView(Context context, AttributeSet attrs) { super(context, attrs); @@ -415,6 +416,11 @@ public class NotificationPanelView extends PanelView implements if (!(child instanceof ExpandableNotificationRow)) { continue; } + boolean suppressedSummary = mGroupManager.isSummaryOfSuppressedGroup( + ((ExpandableNotificationRow) child).getStatusBarNotification()); + if (suppressedSummary) { + continue; + } availableSpace -= child.getMinHeight() + notificationPadding; if (availableSpace >= 0 && count < maximum) { count++; @@ -2298,4 +2304,8 @@ public class NotificationPanelView extends PanelView implements List tasks = am.getRunningTasks(1); return !tasks.isEmpty() && pkgName.equals(tasks.get(0).topActivity.getPackageName()); } + + public void setGroupManager(NotificationGroupManager groupManager) { + mGroupManager = groupManager; + } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java index 86031e1d9e97c..9b1f338f16138 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -708,6 +708,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mNotificationPanel = (NotificationPanelView) mStatusBarWindow.findViewById( R.id.notification_panel); mNotificationPanel.setStatusBar(this); + mNotificationPanel.setGroupManager(mGroupManager); mStatusBarView = (PhoneStatusBarView) mStatusBarWindow.findViewById(R.id.status_bar); mStatusBarView.setBar(this);