diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/ShadeViewManager.kt | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/ShadeViewManager.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/ShadeViewManager.kt index a2c7aa5cc8f7..1db737d5d29e 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/ShadeViewManager.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/ShadeViewManager.kt @@ -18,8 +18,10 @@ package com.android.systemui.statusbar.notification.collection.render import android.content.Context import android.view.View +import com.android.systemui.statusbar.notification.collection.GroupEntry import com.android.systemui.statusbar.notification.collection.ListEntry import com.android.systemui.statusbar.notification.collection.ShadeListBuilder +import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow import com.android.systemui.statusbar.notification.stack.NotificationListContainer import com.android.systemui.statusbar.phone.NotificationIconAreaController import javax.inject.Inject @@ -32,7 +34,7 @@ class ShadeViewManager constructor( context: Context, listContainer: NotificationListContainer, logger: ShadeViewDifferLogger, - viewBarn: NotifViewBarn, + private val viewBarn: NotifViewBarn, private val notificationIconAreaController: NotificationIconAreaController ) { // We pass a shim view here because the listContainer may not actually have a view associated @@ -46,8 +48,17 @@ class ShadeViewManager constructor( private fun onNewNotifTree(notifList: List<ListEntry>) { viewDiffer.applySpec(specBuilder.buildNodeSpec(rootController, notifList)) + updateGroupCounts(notifList) notificationIconAreaController.updateNotificationIcons(notifList) } + + private fun updateGroupCounts(notifList: List<ListEntry>) { + notifList.asSequence().filterIsInstance<GroupEntry>().forEach { groupEntry -> + val controller = viewBarn.requireView(checkNotNull(groupEntry.summary)) + val row = controller.view as ExpandableNotificationRow + row.setUntruncatedChildCount(groupEntry.untruncatedChildCount) + } + } } class ShadeViewManagerFactory @Inject constructor( |