diff options
| author | 2024-11-25 21:43:38 +0000 | |
|---|---|---|
| committer | 2024-11-25 21:43:38 +0000 | |
| commit | 3161f3e123a35a7b14b34b00dbc9063e70f22d7c (patch) | |
| tree | 7d0e6ab93cdfa7615e1e988bd17fb4b496f9a220 | |
| parent | ed6a189ec9abe44f4c15404dc236dec1c8a0b117 (diff) | |
| parent | f5e85a245902c507f819e125a5cbaced77eeb4b3 (diff) | |
Merge "[flexiglass] Don't clear pending keyguard dismiss action when..." into main
10 files changed, 122 insertions, 121 deletions
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerScene.kt b/packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerScene.kt index ae92d259d62b..85f549d43a11 100644 --- a/packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerScene.kt +++ b/packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerScene.kt @@ -21,6 +21,7 @@ import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect import androidx.compose.ui.Modifier import com.android.compose.animation.scene.ElementKey import com.android.compose.animation.scene.SceneScope @@ -71,9 +72,7 @@ constructor( } @Composable - override fun SceneScope.Content( - modifier: Modifier, - ) = + override fun SceneScope.Content(modifier: Modifier) = BouncerScene( viewModel = rememberViewModel("BouncerScene") { contentViewModelFactory.create() }, dialogFactory = dialogFactory, @@ -89,6 +88,8 @@ private fun SceneScope.BouncerScene( ) { val backgroundColor = MaterialTheme.colorScheme.surface + DisposableEffect(Unit) { onDispose { viewModel.onUiDestroyed() } } + Box(modifier) { Canvas(Modifier.element(Bouncer.Elements.Background).fillMaxSize()) { drawRect(color = backgroundColor) @@ -101,7 +102,7 @@ private fun SceneScope.BouncerScene( dialogFactory, Modifier.element(Bouncer.Elements.Content) .sysuiResTag(Bouncer.TestTags.Root) - .fillMaxSize() + .fillMaxSize(), ) } } diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/bouncer/ui/viewmodel/BouncerSceneContentViewModelTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/bouncer/ui/viewmodel/BouncerSceneContentViewModelTest.kt index 3bf4460e0a4a..94f6769ba406 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/bouncer/ui/viewmodel/BouncerSceneContentViewModelTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/bouncer/ui/viewmodel/BouncerSceneContentViewModelTest.kt @@ -34,6 +34,11 @@ import com.android.systemui.coroutines.collectLastValue import com.android.systemui.flags.EnableSceneContainer import com.android.systemui.flags.Flags import com.android.systemui.flags.fakeFeatureFlagsClassic +import com.android.systemui.keyguard.data.repository.fakeKeyguardRepository +import com.android.systemui.keyguard.shared.model.DismissAction +import com.android.systemui.keyguard.shared.model.KeyguardDone +import com.android.systemui.kosmos.collectLastValue +import com.android.systemui.kosmos.runTest import com.android.systemui.kosmos.testScope import com.android.systemui.lifecycle.activateIn import com.android.systemui.res.R @@ -212,6 +217,25 @@ class BouncerSceneContentViewModelTest : SysuiTestCase() { assertThat(isFoldSplitRequired).isTrue() } + @Test + fun onUiDestroyed_clearsPendingDismissAction() = + kosmos.runTest { + val dismissAction by collectLastValue(fakeKeyguardRepository.dismissAction) + fakeKeyguardRepository.setDismissAction( + DismissAction.RunImmediately( + onDismissAction = { KeyguardDone.IMMEDIATE }, + onCancelAction = {}, + message = "", + willAnimateOnLockscreen = true, + ) + ) + assertThat(dismissAction).isNotEqualTo(DismissAction.None) + + underTest.onUiDestroyed() + + assertThat(dismissAction).isEqualTo(DismissAction.None) + } + private fun authMethodsToTest(): List<AuthenticationMethodModel> { return listOf(None, Pin, Password, Pattern, Sim) } diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractorTest.kt b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractorTest.kt index e1496879a34b..dadcf71a4723 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractorTest.kt +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractorTest.kt @@ -35,10 +35,9 @@ import com.android.systemui.keyguard.data.repository.keyguardRepository import com.android.systemui.keyguard.shared.model.DismissAction import com.android.systemui.keyguard.shared.model.KeyguardDone import com.android.systemui.keyguard.shared.model.SuccessFingerprintAuthenticationStatus +import com.android.systemui.kosmos.collectLastValue +import com.android.systemui.kosmos.runTest import com.android.systemui.kosmos.testScope -import com.android.systemui.power.data.repository.fakePowerRepository -import com.android.systemui.power.shared.model.WakeSleepReason -import com.android.systemui.power.shared.model.WakefulnessState import com.android.systemui.scene.data.repository.Idle import com.android.systemui.scene.data.repository.Transition import com.android.systemui.scene.data.repository.setSceneTransition @@ -222,28 +221,6 @@ class KeyguardDismissActionInteractorTest : SysuiTestCase() { } @Test - fun resetDismissAction() = - testScope.runTest { - kosmos.setSceneTransition(Idle(Scenes.Bouncer)) - var wasOnCancelInvoked = false - startInteractor() - keyguardRepository.setDismissAction( - DismissAction.RunAfterKeyguardGone( - dismissAction = {}, - onCancelAction = { wasOnCancelInvoked = true }, - message = "message", - willAnimateOnLockscreen = true, - ) - ) - assertThat(wasOnCancelInvoked).isFalse() - kosmos.setSceneTransition(Idle(Scenes.Lockscreen)) - runCurrent() - - assertThat(wasOnCancelInvoked).isTrue() - assertThat(keyguardRepository.dismissAction.value).isEqualTo(DismissAction.None) - } - - @Test fun doNotResetDismissActionOnUnlockedShade() = testScope.runTest { kosmos.setSceneTransition(Idle(Scenes.Bouncer)) @@ -272,37 +249,6 @@ class KeyguardDismissActionInteractorTest : SysuiTestCase() { } @Test - fun resetDismissAction_onBouncer_OnAsleep() = - testScope.runTest { - kosmos.setSceneTransition(Idle(Scenes.Bouncer)) - kosmos.fakeAuthenticationRepository.setAuthenticationMethod( - AuthenticationMethodModel.None - ) - var wasOnCancelInvoked = false - startInteractor() - - keyguardRepository.setDismissAction( - DismissAction.RunAfterKeyguardGone( - dismissAction = {}, - onCancelAction = { wasOnCancelInvoked = true }, - message = "message", - willAnimateOnLockscreen = true, - ) - ) - assertThat(wasOnCancelInvoked).isFalse() - kosmos.fakePowerRepository.updateWakefulness( - rawState = WakefulnessState.ASLEEP, - lastWakeReason = WakeSleepReason.POWER_BUTTON, - lastSleepReason = WakeSleepReason.TIMEOUT, - powerButtonLaunchGestureTriggered = false, - ) - runCurrent() - - assertThat(wasOnCancelInvoked).isTrue() - assertThat(keyguardRepository.dismissAction.value).isEqualTo(DismissAction.None) - } - - @Test fun setDismissAction_callsCancelRunnableOnPreviousDismissAction() = testScope.runTest { val dismissAction by collectLastValue(keyguardRepository.dismissAction) @@ -410,6 +356,25 @@ class KeyguardDismissActionInteractorTest : SysuiTestCase() { assertThat(wasCancelActionInvoked).isFalse() } + @Test + fun clearDismissAction() = + kosmos.runTest { + val dismissAction by collectLastValue(fakeKeyguardRepository.dismissAction) + fakeKeyguardRepository.setDismissAction( + DismissAction.RunImmediately( + onDismissAction = { KeyguardDone.IMMEDIATE }, + onCancelAction = {}, + message = "", + willAnimateOnLockscreen = true, + ) + ) + assertThat(dismissAction).isNotEqualTo(DismissAction.None) + + underTest.clearDismissAction() + + assertThat(dismissAction).isEqualTo(DismissAction.None) + } + private fun TestScope.startInteractor() { testScope.backgroundScope.launchTraced( "KeyguardDismissActionInteractorTest#startInteractor" diff --git a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java index 0eb620343e6a..d174484219ff 100644 --- a/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java +++ b/packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManagerTest.java @@ -190,6 +190,8 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase { private ArgumentCaptor<OnBackInvokedCallback> mBackCallbackCaptor; @Captor private ArgumentCaptor<KeyguardUpdateMonitorCallback> mKeyguardUpdateMonitorCallback; + @Mock + private KeyguardDismissActionInteractor mKeyguardDismissActionInteractor; @Rule public final CheckFlagsRule mCheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule(); @@ -236,7 +238,7 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase { mKeyguardTransitionInteractor, mock(KeyguardDismissTransitionInteractor.class), StandardTestDispatcher(null, null), - () -> mock(KeyguardDismissActionInteractor.class), + () -> mKeyguardDismissActionInteractor, mSelectedUserInteractor, mock(JavaAdapter.class), () -> mSceneInteractor, @@ -968,4 +970,33 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase { ); verify(mAlternateBouncerInteractor).hide(); } + + @Test + public void hideAlternateBouncer_clearsDismissActionByDefault() { + clearInvocations(mKeyguardDismissActionInteractor); + + mStatusBarKeyguardViewManager.hideAlternateBouncer(/* updateScrim= */ true); + + verify(mKeyguardDismissActionInteractor).clearDismissAction(); + } + + @Test + public void hideAlternateBouncer_clearsDismissActionExplicitly() { + clearInvocations(mKeyguardDismissActionInteractor); + + mStatusBarKeyguardViewManager.hideAlternateBouncer( + /* updateScrim= */ true, /* clearDismissAction= */ true); + + verify(mKeyguardDismissActionInteractor).clearDismissAction(); + } + + @Test + public void hideAlternateBouncer_doNotClearDismissActionExplicitly() { + clearInvocations(mKeyguardDismissActionInteractor); + + mStatusBarKeyguardViewManager.hideAlternateBouncer( + /* updateScrim= */ true, /* clearDismissAction= */ false); + + verify(mKeyguardDismissActionInteractor, never()).clearDismissAction(); + } } diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardViewController.java index 9513c8e4d8be..5a9cbce73e4b 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardViewController.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardViewController.java @@ -174,9 +174,20 @@ public interface KeyguardViewController { /** * Stop showing the alternate bouncer, if showing. + * + * <p>Should be like calling {@link #hideAlternateBouncer(boolean, boolean)} with a {@code true} + * {@code clearDismissAction} parameter. */ void hideAlternateBouncer(boolean updateScrim); + /** + * Stop showing the alternate bouncer, if showing. + * + * @param updateScrim Whether to update the scrim + * @param clearDismissAction Whether the pending dismiss action should be cleared + */ + void hideAlternateBouncer(boolean updateScrim, boolean clearDismissAction); + // TODO: Deprecate registerStatusBar in KeyguardViewController interface. It is currently // only used for testing purposes in StatusBarKeyguardViewManager, and it prevents us from // achieving complete abstraction away from where the Keyguard View is mounted. diff --git a/packages/SystemUI/src/com/android/systemui/bouncer/ui/viewmodel/BouncerSceneContentViewModel.kt b/packages/SystemUI/src/com/android/systemui/bouncer/ui/viewmodel/BouncerSceneContentViewModel.kt index 47d913746ed7..5deb751ced27 100644 --- a/packages/SystemUI/src/com/android/systemui/bouncer/ui/viewmodel/BouncerSceneContentViewModel.kt +++ b/packages/SystemUI/src/com/android/systemui/bouncer/ui/viewmodel/BouncerSceneContentViewModel.kt @@ -23,6 +23,7 @@ import android.graphics.Bitmap import androidx.compose.ui.input.key.KeyEvent import androidx.compose.ui.input.key.type import androidx.core.graphics.drawable.toBitmap +import com.android.app.tracing.coroutines.launchTraced as launch import com.android.app.tracing.coroutines.traceCoroutine import com.android.systemui.authentication.domain.interactor.AuthenticationInteractor import com.android.systemui.authentication.shared.model.AuthenticationMethodModel @@ -35,6 +36,7 @@ import com.android.systemui.bouncer.ui.helper.BouncerHapticPlayer import com.android.systemui.common.shared.model.Icon import com.android.systemui.common.shared.model.Text import com.android.systemui.dagger.qualifiers.Application +import com.android.systemui.keyguard.domain.interactor.KeyguardDismissActionInteractor import com.android.systemui.keyguard.domain.interactor.KeyguardMediaKeyInteractor import com.android.systemui.lifecycle.ExclusiveActivatable import com.android.systemui.user.ui.viewmodel.UserSwitcherViewModel @@ -48,7 +50,6 @@ import kotlinx.coroutines.flow.asStateFlow import kotlinx.coroutines.flow.collectLatest import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.map -import com.android.app.tracing.coroutines.launchTraced as launch /** Models UI state for the content of the bouncer scene. */ class BouncerSceneContentViewModel @@ -67,6 +68,7 @@ constructor( private val bouncerHapticPlayer: BouncerHapticPlayer, private val keyguardMediaKeyInteractor: KeyguardMediaKeyInteractor, private val bouncerActionButtonInteractor: BouncerActionButtonInteractor, + private val keyguardDismissActionInteractor: KeyguardDismissActionInteractor, ) : ExclusiveActivatable() { private val _selectedUserImage = MutableStateFlow<Bitmap?>(null) val selectedUserImage: StateFlow<Bitmap?> = _selectedUserImage.asStateFlow() @@ -421,6 +423,13 @@ constructor( } } + /** + * Notifies that the bouncer UI has been destroyed (e.g. the composable left the composition). + */ + fun onUiDestroyed() { + keyguardDismissActionInteractor.clearDismissAction() + } + data class DialogViewModel( val text: String, diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractor.kt b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractor.kt index 21090c12e9fe..cc8652c76181 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractor.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractor.kt @@ -18,7 +18,6 @@ package com.android.systemui.keyguard.domain.interactor import com.android.keyguard.logging.KeyguardLogger -import com.android.systemui.bouncer.domain.interactor.AlternateBouncerInteractor import com.android.systemui.bouncer.domain.interactor.PrimaryBouncerInteractor import com.android.systemui.bouncer.shared.flag.ComposeBouncerFlags import com.android.systemui.dagger.SysUISingleton @@ -28,15 +27,12 @@ import com.android.systemui.keyguard.data.repository.KeyguardRepository import com.android.systemui.keyguard.shared.model.DismissAction import com.android.systemui.keyguard.shared.model.KeyguardDone import com.android.systemui.keyguard.shared.model.KeyguardState.GONE -import com.android.systemui.keyguard.shared.model.KeyguardState.PRIMARY_BOUNCER import com.android.systemui.lifecycle.ExclusiveActivatable import com.android.systemui.log.core.LogLevel -import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.scene.domain.interactor.SceneInteractor import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.shade.domain.interactor.ShadeInteractor -import com.android.systemui.util.kotlin.Utils.Companion.sampleFilter import dagger.Lazy import javax.inject.Inject import kotlinx.coroutines.CoroutineScope @@ -66,8 +62,6 @@ constructor( val dismissInteractor: KeyguardDismissInteractor, @Application private val applicationScope: CoroutineScope, deviceUnlockedInteractor: Lazy<DeviceUnlockedInteractor>, - powerInteractor: PowerInteractor, - alternateBouncerInteractor: AlternateBouncerInteractor, shadeInteractor: Lazy<ShadeInteractor>, keyguardInteractor: Lazy<KeyguardInteractor>, sceneInteractor: Lazy<SceneInteractor>, @@ -144,42 +138,6 @@ constructor( } } - /** Flow that emits whenever we need to reset the dismiss action */ - private val resetDismissAction: Flow<Unit> = - combine( - if (SceneContainerFlag.isEnabled) { - // Using currentScene instead of isFinishedIn because of a race condition that - // forms between isFinishedIn(Gone) and isOnShadeWhileUnlocked where the latter - // emits false before the former emits true, causing the evaluation of the - // combine to come up with true, temporarily, before settling on false, which is - // a valid final state. That causes an incorrect reset of the dismiss action to - // occur before it gets executed. - sceneInteractor - .get() - .currentScene - .map { it == Scenes.Gone } - .distinctUntilChanged() - } else { - transitionInteractor.isFinishedIn( - scene = Scenes.Gone, - stateWithoutSceneContainer = GONE, - ) - }, - transitionInteractor.isFinishedIn( - scene = Scenes.Bouncer, - stateWithoutSceneContainer = PRIMARY_BOUNCER, - ), - alternateBouncerInteractor.isVisible, - isOnShadeWhileUnlocked, - powerInteractor.isAsleep, - ) { isOnGone, isOnBouncer, isOnAltBouncer, isOnShadeWhileUnlocked, isAsleep -> - (!isOnGone && !isOnBouncer && !isOnAltBouncer && !isOnShadeWhileUnlocked) || - isAsleep - } - .filter { it } - .sampleFilter(dismissAction) { it !is DismissAction.None } - .map {} - fun runDismissAnimationOnKeyguard(): Boolean { return willAnimateDismissActionOnLockscreen.value } @@ -220,19 +178,15 @@ constructor( } } - launch { - resetDismissAction.collect { - log("resetDismissAction") - repository.dismissAction.value.onCancelAction.run() - clearDismissAction() - } - } - launch { repository.dismissAction.collect { log("updatedDismissAction=$it") } } awaitCancellation() } } + fun clearDismissAction() { + repository.setDismissAction(DismissAction.None) + } + /** Run the dismiss action and starts the dismiss keyguard transition. */ private suspend fun runDismissAction() { val dismissAction = repository.dismissAction.value @@ -249,10 +203,6 @@ constructor( } } - private fun clearDismissAction() { - repository.setDismissAction(DismissAction.None) - } - private fun log(message: String) { keyguardLogger.log(TAG, LogLevel.DEBUG, message) } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java index aef26dea3c0d..bd1360f6e939 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java @@ -818,7 +818,10 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb * dragging it and translation should be deferred {@see KeyguardBouncer#show(boolean, boolean)} */ public void showPrimaryBouncer(boolean scrimmed) { - hideAlternateBouncer(false); + hideAlternateBouncer( + /* updateScrim= */ false, + // When the scene framework is on, don't ever clear the pending dismiss action from + /* clearDismissAction= */ !SceneContainerFlag.isEnabled()); if (mKeyguardStateController.isShowing() && !isBouncerShowing()) { if (SceneContainerFlag.isEnabled()) { mSceneInteractorLazy.get().changeScene( @@ -1005,6 +1008,15 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb @Override public void hideAlternateBouncer(boolean updateScrim) { + hideAlternateBouncer(updateScrim, /* clearDismissAction= */ true); + } + + @Override + public void hideAlternateBouncer(boolean updateScrim, boolean clearDismissAction) { + if (clearDismissAction) { + mKeyguardDismissActionInteractor.get().clearDismissAction(); + } + updateAlternateBouncerShowing(mAlternateBouncerInteractor.hide() && updateScrim); } diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/bouncer/ui/viewmodel/BouncerViewModelKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/bouncer/ui/viewmodel/BouncerViewModelKosmos.kt index e0d1d16bcf55..72541540226c 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/bouncer/ui/viewmodel/BouncerViewModelKosmos.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/bouncer/ui/viewmodel/BouncerViewModelKosmos.kt @@ -28,6 +28,7 @@ import com.android.systemui.bouncer.domain.interactor.simBouncerInteractor import com.android.systemui.bouncer.ui.helper.BouncerHapticPlayer import com.android.systemui.haptics.msdl.bouncerHapticPlayer import com.android.systemui.inputmethod.domain.interactor.inputMethodInteractor +import com.android.systemui.keyguard.domain.interactor.keyguardDismissActionInteractor import com.android.systemui.keyguard.domain.interactor.keyguardMediaKeyInteractor import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.Kosmos.Fixture @@ -63,6 +64,7 @@ val Kosmos.bouncerSceneContentViewModel by Fixture { bouncerHapticPlayer = bouncerHapticPlayer, keyguardMediaKeyInteractor = keyguardMediaKeyInteractor, bouncerActionButtonInteractor = bouncerActionButtonInteractor, + keyguardDismissActionInteractor = keyguardDismissActionInteractor, ) } diff --git a/packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractorKosmos.kt b/packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractorKosmos.kt index bd841ab2e801..09f5fd79eeca 100644 --- a/packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractorKosmos.kt +++ b/packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/domain/interactor/KeyguardDismissActionInteractorKosmos.kt @@ -17,14 +17,12 @@ package com.android.systemui.keyguard.domain.interactor import com.android.keyguard.logging.KeyguardLogger -import com.android.systemui.bouncer.domain.interactor.alternateBouncerInteractor import com.android.systemui.bouncer.domain.interactor.primaryBouncerInteractor import com.android.systemui.deviceentry.domain.interactor.deviceUnlockedInteractor import com.android.systemui.keyguard.data.repository.keyguardRepository import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.testScope import com.android.systemui.log.logcatLogBuffer -import com.android.systemui.power.domain.interactor.powerInteractor import com.android.systemui.scene.domain.interactor.sceneInteractor import com.android.systemui.shade.domain.interactor.shadeInteractor import kotlinx.coroutines.ExperimentalCoroutinesApi @@ -38,8 +36,6 @@ val Kosmos.keyguardDismissActionInteractor by dismissInteractor = keyguardDismissInteractor, applicationScope = testScope.backgroundScope, deviceUnlockedInteractor = { deviceUnlockedInteractor }, - powerInteractor = powerInteractor, - alternateBouncerInteractor = alternateBouncerInteractor, shadeInteractor = { shadeInteractor }, keyguardInteractor = { keyguardInteractor }, sceneInteractor = { sceneInteractor }, |