Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 39258b69 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "New Pipeline: Show group count" into sc-v2-dev am: 76292931

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16159682

Change-Id: I49001485a4810d17fc8eb29af521aecf6f0c16b8
parents d2905c58 76292931
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -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(