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

Commit aa6514a6 authored by Danny Burakov's avatar Danny Burakov Committed by Android (Google) Code Review
Browse files

Merge "[bc25] Remove SceneFamilies.QuickSettings and associated resolver code." into main

parents ab6d5807 e716b400
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -40,7 +40,6 @@ import com.android.systemui.scene.data.repository.Transition
import com.android.systemui.scene.data.repository.setSceneTransition
import com.android.systemui.scene.domain.interactor.sceneInteractor
import com.android.systemui.scene.domain.resolver.notifShadeSceneFamilyResolver
import com.android.systemui.scene.domain.resolver.quickSettingsSceneFamilyResolver
import com.android.systemui.scene.shared.model.Scenes
import com.android.systemui.shade.domain.interactor.shadeInteractor
import com.android.systemui.testKosmos
@@ -80,7 +79,6 @@ class KeyguardDismissActionInteractorTest : SysuiTestCase() {
                applicationScope = testScope.backgroundScope,
                sceneInteractor = { kosmos.sceneInteractor },
                deviceUnlockedInteractor = { kosmos.deviceUnlockedInteractor },
                quickSettingsSceneFamilyResolver = { kosmos.quickSettingsSceneFamilyResolver },
                notifShadeSceneFamilyResolver = { kosmos.notifShadeSceneFamilyResolver },
                powerInteractor = kosmos.powerInteractor,
                alternateBouncerInteractor = kosmos.alternateBouncerInteractor,
+4 −6
Original line number Diff line number Diff line
@@ -30,7 +30,6 @@ import com.android.systemui.keyguard.shared.model.KeyguardState.PRIMARY_BOUNCER
import com.android.systemui.power.domain.interactor.PowerInteractor
import com.android.systemui.scene.domain.interactor.SceneInteractor
import com.android.systemui.scene.domain.resolver.NotifShadeSceneFamilyResolver
import com.android.systemui.scene.domain.resolver.QuickSettingsSceneFamilyResolver
import com.android.systemui.scene.shared.flag.SceneContainerFlag
import com.android.systemui.scene.shared.model.Scenes
import com.android.systemui.shade.domain.interactor.ShadeInteractor
@@ -64,7 +63,6 @@ constructor(
    @Application private val applicationScope: CoroutineScope,
    sceneInteractor: Lazy<SceneInteractor>,
    deviceUnlockedInteractor: Lazy<DeviceUnlockedInteractor>,
    quickSettingsSceneFamilyResolver: Lazy<QuickSettingsSceneFamilyResolver>,
    notifShadeSceneFamilyResolver: Lazy<NotifShadeSceneFamilyResolver>,
    powerInteractor: PowerInteractor,
    alternateBouncerInteractor: AlternateBouncerInteractor,
@@ -109,7 +107,7 @@ constructor(
                    deviceUnlockedInteractor.get().deviceUnlockStatus,
                ) { scene, unlockStatus ->
                    unlockStatus.isUnlocked &&
                        (quickSettingsSceneFamilyResolver.get().includesScene(scene) ||
                        (scene == Scenes.QuickSettings ||
                            notifShadeSceneFamilyResolver.get().includesScene(scene))
                }
                .distinctUntilChanged()
@@ -133,7 +131,7 @@ constructor(
        merge(
                finishedTransitionToGone,
                isOnShadeWhileUnlocked.filter { it }.map {},
                dismissInteractor.dismissKeyguardRequestWithImmediateDismissAction
                dismissInteractor.dismissKeyguardRequestWithImmediateDismissAction,
            )
            .sample(dismissAction)
            .filterNot { it is DismissAction.None }
@@ -143,11 +141,11 @@ constructor(
        combine(
                transitionInteractor.isFinishedIn(
                    scene = Scenes.Gone,
                    stateWithoutSceneContainer = GONE
                    stateWithoutSceneContainer = GONE,
                ),
                transitionInteractor.isFinishedIn(
                    scene = Scenes.Bouncer,
                    stateWithoutSceneContainer = PRIMARY_BOUNCER
                    stateWithoutSceneContainer = PRIMARY_BOUNCER,
                ),
                alternateBouncerInteractor.isVisible,
                isOnShadeWhileUnlocked,
+19 −14
Original line number Diff line number Diff line
@@ -21,13 +21,11 @@ package com.android.systemui.keyguard.ui.viewmodel
import com.android.compose.animation.scene.Edge
import com.android.compose.animation.scene.Swipe
import com.android.compose.animation.scene.SwipeDirection
import com.android.compose.animation.scene.TransitionKey
import com.android.compose.animation.scene.UserAction
import com.android.compose.animation.scene.UserActionResult
import com.android.systemui.communal.domain.interactor.CommunalInteractor
import com.android.systemui.deviceentry.domain.interactor.DeviceEntryInteractor
import com.android.systemui.scene.shared.model.Overlays
import com.android.systemui.scene.shared.model.SceneFamilies
import com.android.systemui.scene.shared.model.Scenes
import com.android.systemui.scene.shared.model.TransitionKeys.ToSplitShade
import com.android.systemui.scene.ui.viewmodel.SceneContainerEdge
@@ -71,9 +69,8 @@ constructor(

                            addAll(
                                when (shadeMode) {
                                    ShadeMode.Single -> fullscreenShadeActions()
                                    ShadeMode.Split ->
                                        fullscreenShadeActions(transitionKey = ToSplitShade)
                                    ShadeMode.Single -> singleShadeActions()
                                    ShadeMode.Split -> splitShadeActions()
                                    ShadeMode.Dual -> dualShadeActions()
                                }
                            )
@@ -84,18 +81,26 @@ constructor(
            .collect { setActions(it) }
    }

    private fun fullscreenShadeActions(
        transitionKey: TransitionKey? = null
    ): Array<Pair<UserAction, UserActionResult>> {
        val notifShadeSceneKey = UserActionResult(SceneFamilies.NotifShade, transitionKey)
        val qsShadeSceneKey = UserActionResult(SceneFamilies.QuickSettings, transitionKey)
    private fun singleShadeActions(): Array<Pair<UserAction, UserActionResult>> {
        return arrayOf(
            // Swiping down, not from the edge, always goes to shade.
            Swipe.Down to notifShadeSceneKey,
            swipeDown(pointerCount = 2) to notifShadeSceneKey,
            Swipe.Down to Scenes.Shade,
            swipeDown(pointerCount = 2) to Scenes.Shade,
            // Swiping down from the top edge goes to QS.
            swipeDownFromTop(pointerCount = 1) to qsShadeSceneKey,
            swipeDownFromTop(pointerCount = 2) to qsShadeSceneKey,
            swipeDownFromTop(pointerCount = 1) to Scenes.QuickSettings,
            swipeDownFromTop(pointerCount = 2) to Scenes.QuickSettings,
        )
    }

    private fun splitShadeActions(): Array<Pair<UserAction, UserActionResult>> {
        val splitShadeSceneKey = UserActionResult(Scenes.Shade, ToSplitShade)
        return arrayOf(
            // Swiping down, not from the edge, always goes to shade.
            Swipe.Down to splitShadeSceneKey,
            swipeDown(pointerCount = 2) to splitShadeSceneKey,
            // Swiping down from the top edge goes to QS.
            swipeDownFromTop(pointerCount = 1) to splitShadeSceneKey,
            swipeDownFromTop(pointerCount = 2) to splitShadeSceneKey,
        )
    }

+0 −2
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@ import com.android.systemui.scene.domain.SceneDomainModule
import com.android.systemui.scene.domain.interactor.WindowRootViewVisibilityInteractor
import com.android.systemui.scene.domain.resolver.HomeSceneFamilyResolverModule
import com.android.systemui.scene.domain.resolver.NotifShadeSceneFamilyResolverModule
import com.android.systemui.scene.domain.resolver.QuickSettingsSceneFamilyResolverModule
import com.android.systemui.scene.domain.startable.KeyguardStateCallbackStartable
import com.android.systemui.scene.domain.startable.SceneContainerStartable
import com.android.systemui.scene.domain.startable.ScrimStartable
@@ -57,7 +56,6 @@ import dagger.multibindings.IntoMap
            // List SceneResolver modules for supported SceneFamilies
            HomeSceneFamilyResolverModule::class,
            NotifShadeSceneFamilyResolverModule::class,
            QuickSettingsSceneFamilyResolverModule::class,
        ]
)
interface KeyguardlessSceneContainerFrameworkModule {
+0 −2
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@ import com.android.systemui.scene.domain.SceneDomainModule
import com.android.systemui.scene.domain.interactor.WindowRootViewVisibilityInteractor
import com.android.systemui.scene.domain.resolver.HomeSceneFamilyResolverModule
import com.android.systemui.scene.domain.resolver.NotifShadeSceneFamilyResolverModule
import com.android.systemui.scene.domain.resolver.QuickSettingsSceneFamilyResolverModule
import com.android.systemui.scene.domain.startable.KeyguardStateCallbackStartable
import com.android.systemui.scene.domain.startable.SceneContainerStartable
import com.android.systemui.scene.domain.startable.ScrimStartable
@@ -61,7 +60,6 @@ import dagger.multibindings.IntoMap
            // List SceneResolver modules for supported SceneFamilies
            HomeSceneFamilyResolverModule::class,
            NotifShadeSceneFamilyResolverModule::class,
            QuickSettingsSceneFamilyResolverModule::class,
        ]
)
interface SceneContainerFrameworkModule {
Loading