diff options
5 files changed, 23 insertions, 117 deletions
diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/communal/ui/viewmodel/CommunalUserActionsViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/communal/ui/viewmodel/CommunalUserActionsViewModelTest.kt index c158baf5a80c..619995478ecc 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/communal/ui/viewmodel/CommunalUserActionsViewModelTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/communal/ui/viewmodel/CommunalUserActionsViewModelTest.kt @@ -35,7 +35,6 @@ import com.android.systemui.power.domain.interactor.PowerInteractor.Companion.se import com.android.systemui.power.domain.interactor.powerInteractor import com.android.systemui.scene.domain.interactor.sceneInteractor 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.shade.domain.interactor.enableDualShade @@ -74,7 +73,7 @@ class CommunalUserActionsViewModelTest : SysuiTestCase() { setUpState(isShadeTouchable = true, isDeviceUnlocked = false) assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(SceneFamilies.Home)) + assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(Scenes.Lockscreen)) assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Bouncer)) assertThat(actions?.get(Swipe.Down)).isEqualTo(UserActionResult(Scenes.Shade)) @@ -83,7 +82,7 @@ class CommunalUserActionsViewModelTest : SysuiTestCase() { setUpState(isShadeTouchable = true, isDeviceUnlocked = true) assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(SceneFamilies.Home)) + assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(Scenes.Lockscreen)) assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Gone)) assertThat(actions?.get(Swipe.Down)).isEqualTo(UserActionResult(Scenes.Shade)) } @@ -96,7 +95,7 @@ class CommunalUserActionsViewModelTest : SysuiTestCase() { setUpState(isShadeTouchable = true, isDeviceUnlocked = false) assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(SceneFamilies.Home)) + assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(Scenes.Lockscreen)) assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Bouncer)) assertThat(actions?.get(Swipe.Down)) .isEqualTo(UserActionResult(Scenes.Shade, ToSplitShade)) @@ -106,7 +105,7 @@ class CommunalUserActionsViewModelTest : SysuiTestCase() { setUpState(isShadeTouchable = true, isDeviceUnlocked = true) assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(SceneFamilies.Home)) + assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(Scenes.Lockscreen)) assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Gone)) assertThat(actions?.get(Swipe.Down)) .isEqualTo(UserActionResult(Scenes.Shade, ToSplitShade)) @@ -120,7 +119,7 @@ class CommunalUserActionsViewModelTest : SysuiTestCase() { setUpState(isShadeTouchable = true, isDeviceUnlocked = false) assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(SceneFamilies.Home)) + assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(Scenes.Lockscreen)) assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Bouncer)) assertThat(actions?.get(Swipe.Down)) .isEqualTo(UserActionResult.ShowOverlay(Overlays.NotificationsShade)) @@ -130,7 +129,7 @@ class CommunalUserActionsViewModelTest : SysuiTestCase() { setUpState(isShadeTouchable = true, isDeviceUnlocked = true) assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(SceneFamilies.Home)) + assertThat(actions?.get(Swipe.End)).isEqualTo(UserActionResult(Scenes.Lockscreen)) assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Gone)) assertThat(actions?.get(Swipe.Down)) .isEqualTo(UserActionResult.ShowOverlay(Overlays.NotificationsShade)) diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModelTest.kt index 1c93b3c66e32..102ce0b51c94 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModelTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModelTest.kt @@ -23,7 +23,6 @@ import com.android.compose.animation.scene.UserActionResult import com.android.systemui.SysuiTestCase import com.android.systemui.authentication.data.repository.fakeAuthenticationRepository import com.android.systemui.authentication.shared.model.AuthenticationMethodModel -import com.android.systemui.communal.domain.interactor.setCommunalAvailable import com.android.systemui.coroutines.collectLastValue import com.android.systemui.deviceentry.domain.interactor.deviceUnlockedInteractor import com.android.systemui.flags.EnableSceneContainer @@ -62,15 +61,14 @@ class DreamUserActionsViewModelTest : SysuiTestCase() { @Before fun setUp() { - underTest = kosmos.dreamUserActionsViewModel + underTest = kosmos.dreamUserActionsViewModelFactory.create() underTest.activateIn(testScope) } @Test - fun actions_communalNotAvailable_singleShade() = + fun actions_singleShade() = testScope.runTest { kosmos.enableSingleShade() - kosmos.setCommunalAvailable(false) val actions by collectLastValue(underTest.actions) @@ -93,10 +91,9 @@ class DreamUserActionsViewModelTest : SysuiTestCase() { } @Test - fun actions_communalNotAvailable_splitShade() = + fun actions_splitShade() = testScope.runTest { kosmos.enableSplitShade() - kosmos.setCommunalAvailable(false) val actions by collectLastValue(underTest.actions) @@ -121,10 +118,9 @@ class DreamUserActionsViewModelTest : SysuiTestCase() { } @Test - fun actions_communalNotAvailable_dualShade() = + fun actions_dualShade() = testScope.runTest { kosmos.enableDualShade() - kosmos.setCommunalAvailable(false) val actions by collectLastValue(underTest.actions) @@ -148,88 +144,6 @@ class DreamUserActionsViewModelTest : SysuiTestCase() { assertThat(actions?.get(Swipe.End)).isNull() } - @Test - fun actions_communalAvailable_singleShade() = - testScope.runTest { - kosmos.enableSingleShade() - kosmos.setCommunalAvailable(true) - - val actions by collectLastValue(underTest.actions) - - setUpState(isShadeTouchable = true, isDeviceUnlocked = false) - assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Bouncer)) - assertThat(actions?.get(Swipe.Down)).isEqualTo(UserActionResult(Scenes.Shade)) - assertThat(actions?.get(Swipe.Start)).isEqualTo(UserActionResult(Scenes.Communal)) - assertThat(actions?.get(Swipe.End)).isNull() - - setUpState(isShadeTouchable = false, isDeviceUnlocked = false) - assertThat(actions).isEmpty() - - setUpState(isShadeTouchable = true, isDeviceUnlocked = true) - assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Gone)) - assertThat(actions?.get(Swipe.Down)).isEqualTo(UserActionResult(Scenes.Shade)) - assertThat(actions?.get(Swipe.Start)).isEqualTo(UserActionResult(Scenes.Communal)) - assertThat(actions?.get(Swipe.End)).isNull() - } - - @Test - fun actions_communalAvailable_splitShade() = - testScope.runTest { - kosmos.enableSplitShade() - kosmos.setCommunalAvailable(true) - - val actions by collectLastValue(underTest.actions) - - setUpState(isShadeTouchable = true, isDeviceUnlocked = false) - assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Bouncer)) - assertThat(actions?.get(Swipe.Down)) - .isEqualTo(UserActionResult(Scenes.Shade, ToSplitShade)) - assertThat(actions?.get(Swipe.Start)).isEqualTo(UserActionResult(Scenes.Communal)) - assertThat(actions?.get(Swipe.End)).isNull() - - setUpState(isShadeTouchable = false, isDeviceUnlocked = false) - assertThat(actions).isEmpty() - - setUpState(isShadeTouchable = true, isDeviceUnlocked = true) - assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Gone)) - assertThat(actions?.get(Swipe.Down)) - .isEqualTo(UserActionResult(Scenes.Shade, ToSplitShade)) - assertThat(actions?.get(Swipe.Start)).isEqualTo(UserActionResult(Scenes.Communal)) - assertThat(actions?.get(Swipe.End)).isNull() - } - - @Test - fun actions_communalAvailable_dualShade() = - testScope.runTest { - kosmos.enableDualShade() - kosmos.setCommunalAvailable(true) - - val actions by collectLastValue(underTest.actions) - - setUpState(isShadeTouchable = true, isDeviceUnlocked = false) - assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Bouncer)) - assertThat(actions?.get(Swipe.Down)) - .isEqualTo(UserActionResult.ShowOverlay(Overlays.NotificationsShade)) - assertThat(actions?.get(Swipe.Start)).isEqualTo(UserActionResult(Scenes.Communal)) - assertThat(actions?.get(Swipe.End)).isNull() - - setUpState(isShadeTouchable = false, isDeviceUnlocked = false) - assertThat(actions).isEmpty() - - setUpState(isShadeTouchable = true, isDeviceUnlocked = true) - assertThat(actions).isNotEmpty() - assertThat(actions?.get(Swipe.Up)).isEqualTo(UserActionResult(Scenes.Gone)) - assertThat(actions?.get(Swipe.Down)) - .isEqualTo(UserActionResult.ShowOverlay(Overlays.NotificationsShade)) - assertThat(actions?.get(Swipe.Start)).isEqualTo(UserActionResult(Scenes.Communal)) - assertThat(actions?.get(Swipe.End)).isNull() - } - private fun TestScope.setUpState(isShadeTouchable: Boolean, isDeviceUnlocked: Boolean) { if (isShadeTouchable) { kosmos.powerInteractor.setAwakeForTest() diff --git a/packages/SystemUI/src/com/android/systemui/communal/ui/viewmodel/CommunalUserActionsViewModel.kt b/packages/SystemUI/src/com/android/systemui/communal/ui/viewmodel/CommunalUserActionsViewModel.kt index 29d9cacdbc79..be1d005a0198 100644 --- a/packages/SystemUI/src/com/android/systemui/communal/ui/viewmodel/CommunalUserActionsViewModel.kt +++ b/packages/SystemUI/src/com/android/systemui/communal/ui/viewmodel/CommunalUserActionsViewModel.kt @@ -20,7 +20,6 @@ import com.android.compose.animation.scene.Swipe import com.android.compose.animation.scene.UserAction import com.android.compose.animation.scene.UserActionResult import com.android.systemui.deviceentry.domain.interactor.DeviceUnlockedInteractor -import com.android.systemui.scene.shared.model.SceneFamilies import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.scene.ui.viewmodel.UserActionsViewModel import com.android.systemui.shade.domain.interactor.ShadeInteractor @@ -60,8 +59,7 @@ constructor( if (isDeviceUnlocked) Scenes.Gone else Scenes.Bouncer add(Swipe.Up to bouncerOrGone) - // "Home" is either Lockscreen, or Gone - if the device is entered. - add(Swipe.End to SceneFamilies.Home) + add(Swipe.End to Scenes.Lockscreen) addAll( when (shadeMode) { diff --git a/packages/SystemUI/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModel.kt b/packages/SystemUI/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModel.kt index 9ce2ce0100a3..7437d3e215d5 100644 --- a/packages/SystemUI/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModel.kt +++ b/packages/SystemUI/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModel.kt @@ -19,7 +19,6 @@ package com.android.systemui.dreams.ui.viewmodel import com.android.compose.animation.scene.Swipe 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.DeviceUnlockedInteractor import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.scene.ui.viewmodel.UserActionsViewModel @@ -40,7 +39,6 @@ import kotlinx.coroutines.flow.map class DreamUserActionsViewModel @AssistedInject constructor( - private val communalInteractor: CommunalInteractor, private val deviceUnlockedInteractor: DeviceUnlockedInteractor, private val shadeInteractor: ShadeInteractor, private val shadeModeInteractor: ShadeModeInteractor, @@ -54,14 +52,9 @@ constructor( } else { combine( deviceUnlockedInteractor.deviceUnlockStatus.map { it.isUnlocked }, - communalInteractor.isCommunalAvailable, shadeModeInteractor.shadeMode, - ) { isDeviceUnlocked, isCommunalAvailable, shadeMode -> + ) { isDeviceUnlocked, shadeMode -> buildList { - if (isCommunalAvailable) { - add(Swipe.Start to Scenes.Communal) - } - val bouncerOrGone = if (isDeviceUnlocked) Scenes.Gone else Scenes.Bouncer add(Swipe.Up to bouncerOrGone) diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModelKosmos.kt index 2e59788663f7..4480539b9a15 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModelKosmos.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/dreams/ui/viewmodel/DreamUserActionsViewModelKosmos.kt @@ -16,18 +16,20 @@ package com.android.systemui.dreams.ui.viewmodel -import com.android.systemui.communal.domain.interactor.communalInteractor import com.android.systemui.deviceentry.domain.interactor.deviceUnlockedInteractor import com.android.systemui.kosmos.Kosmos +import com.android.systemui.kosmos.Kosmos.Fixture import com.android.systemui.shade.domain.interactor.shadeInteractor import com.android.systemui.shade.domain.interactor.shadeModeInteractor -val Kosmos.dreamUserActionsViewModel by - Kosmos.Fixture { - DreamUserActionsViewModel( - communalInteractor = communalInteractor, - deviceUnlockedInteractor = deviceUnlockedInteractor, - shadeInteractor = shadeInteractor, - shadeModeInteractor = shadeModeInteractor, - ) +val Kosmos.dreamUserActionsViewModelFactory by Fixture { + object : DreamUserActionsViewModel.Factory { + override fun create(): DreamUserActionsViewModel { + return DreamUserActionsViewModel( + deviceUnlockedInteractor = deviceUnlockedInteractor, + shadeInteractor = shadeInteractor, + shadeModeInteractor = shadeModeInteractor, + ) + } } +} |