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

Commit ad91a8bf authored by lyn's avatar lyn
Browse files

Bundle and inflate rows for notif

Sort children of bundled groups
Assign sections to bundles and children
Filter notifs inside bundles
Prune group inside bundle and promote children

BundleBarn: inflate BundleEntry view and controller
NodeSpecBuilder: require ENRController for BundleEntry
ShadeViewManager: inject BundleBarn for NodeSpecBuilder
Control all bundle related logging from BundleCoordinator

Bug: 399736937
Test: compile and send bundled test notif
Flag: com.android.systemui.notification_bundle_ui
Change-Id: I2a7a7e035a994d0bba3ec6e80e934e7cc005ecdd
parent 0a7ab7a8
Loading
Loading
Loading
Loading
+4 −1
Original line number Original line Diff line number Diff line
@@ -27,6 +27,7 @@ import androidx.test.filters.SmallTest
import com.android.systemui.SysuiTestCase
import com.android.systemui.SysuiTestCase
import com.android.systemui.statusbar.notification.collection.NotificationEntry
import com.android.systemui.statusbar.notification.collection.NotificationEntry
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder
import com.android.systemui.statusbar.notification.collection.render.BundleBarn
import com.android.systemui.statusbar.notification.collection.render.NodeController
import com.android.systemui.statusbar.notification.collection.render.NodeController
import com.google.common.truth.Truth.assertThat
import com.google.common.truth.Truth.assertThat
import org.junit.Before
import org.junit.Before
@@ -44,6 +45,7 @@ class BundleCoordinatorTest : SysuiTestCase() {
    @Mock private lateinit var socialController: NodeController
    @Mock private lateinit var socialController: NodeController
    @Mock private lateinit var recsController: NodeController
    @Mock private lateinit var recsController: NodeController
    @Mock private lateinit var promoController: NodeController
    @Mock private lateinit var promoController: NodeController
    @Mock private lateinit var bundleBarn: BundleBarn


    private lateinit var coordinator: BundleCoordinator
    private lateinit var coordinator: BundleCoordinator


@@ -55,7 +57,8 @@ class BundleCoordinatorTest : SysuiTestCase() {
                newsController,
                newsController,
                socialController,
                socialController,
                recsController,
                recsController,
                promoController
                promoController,
                bundleBarn
            )
            )
    }
    }


+2 −1
Original line number Original line Diff line number Diff line
@@ -51,6 +51,7 @@ class NodeSpecBuilderTest : SysuiTestCase() {
    private val sectionsFeatureManager: NotificationSectionsFeatureManager = mock()
    private val sectionsFeatureManager: NotificationSectionsFeatureManager = mock()
    private val sectionHeaderVisibilityProvider: SectionHeaderVisibilityProvider = mock()
    private val sectionHeaderVisibilityProvider: SectionHeaderVisibilityProvider = mock()
    private val viewBarn: NotifViewBarn = mock()
    private val viewBarn: NotifViewBarn = mock()
    private val bundleBarn: BundleBarn = mock()
    private val logger = NodeSpecBuilderLogger(mock(), logcatLogBuffer())
    private val logger = NodeSpecBuilderLogger(mock(), logcatLogBuffer())


    private var rootController: NodeController = buildFakeController("rootController")
    private var rootController: NodeController = buildFakeController("rootController")
@@ -81,7 +82,7 @@ class NodeSpecBuilderTest : SysuiTestCase() {
        }
        }


        specBuilder = NodeSpecBuilder(mediaContainerController, sectionsFeatureManager,
        specBuilder = NodeSpecBuilder(mediaContainerController, sectionsFeatureManager,
                sectionHeaderVisibilityProvider, viewBarn, logger)
                sectionHeaderVisibilityProvider, viewBarn, bundleBarn, logger)
    }
    }


    @Test
    @Test
+4 −0
Original line number Original line Diff line number Diff line
@@ -43,6 +43,10 @@ class BundleEntry(spec: BundleSpec) : PipelineEntry(spec.key) {
        _children.add(child)
        _children.add(child)
    }
    }


    fun removeChild(child: ListEntry) {
        _children.remove(child)
    }

    fun clearChildren() {
    fun clearChildren() {
        _children.clear()
        _children.clear()
    }
    }
+299 −78

File changed.

Preview size limit exceeded, changes collapsed.

+69 −3

File changed.

Preview size limit exceeded, changes collapsed.

Loading