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

Commit 6454e98e authored by Lyn Han's avatar Lyn Han Committed by Android (Google) Code Review
Browse files

Merge "GroupCountCoordinator: handle bundled groups" into main

parents 5fcede3a 9a1322a0
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.systemui.statusbar.notification.collection.coordinator

import android.util.ArrayMap
import com.android.systemui.statusbar.notification.collection.BundleEntry
import com.android.systemui.statusbar.notification.collection.GroupEntry
import com.android.systemui.statusbar.notification.collection.PipelineEntry
import com.android.systemui.statusbar.notification.collection.NotifPipeline
@@ -37,7 +38,15 @@ class GroupCountCoordinator @Inject constructor() : Coordinator {
    private fun onBeforeFinalizeFilter(entries: List<PipelineEntry>) {
        // save untruncated child counts to our internal map
        untruncatedChildCounts.clear()
        entries.asSequence().filterIsInstance<GroupEntry>().forEach { groupEntry ->
        entries.asSequence()
            .flatMap { entry ->
                when (entry) {
                    is GroupEntry -> listOf(entry)
                    is BundleEntry -> entry.children.filterIsInstance<GroupEntry>()
                    else -> emptyList()
                }
            }
            .forEach { groupEntry ->
                untruncatedChildCounts[groupEntry] = groupEntry.children.size
            }
    }