Loading packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt +11 −11 Original line number Original line Diff line number Diff line Loading @@ -26,8 +26,11 @@ import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionStep import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.util.kotlin.Utils.Companion.sample as sampleCombine import com.android.wm.shell.animation.Interpolators import com.android.wm.shell.animation.Interpolators import javax.inject.Inject import javax.inject.Inject import kotlin.time.Duration.Companion.milliseconds import kotlin.time.Duration.Companion.milliseconds Loading @@ -36,7 +39,6 @@ import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.delay import kotlinx.coroutines.delay import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.emptyFlow import kotlinx.coroutines.flow.emptyFlow import kotlinx.coroutines.flow.filter import kotlinx.coroutines.flow.filter Loading @@ -46,7 +48,6 @@ import kotlinx.coroutines.flow.merge import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.launch import kotlinx.coroutines.launch import com.android.systemui.util.kotlin.Utils.Companion.sample as sampleCombine @ExperimentalCoroutinesApi @ExperimentalCoroutinesApi @SysUISingleton @SysUISingleton Loading Loading @@ -82,17 +83,16 @@ constructor( } } val surfaceBehindVisibility: Flow<Boolean?> = val surfaceBehindVisibility: Flow<Boolean?> = combine( transitionInteractor transitionInteractor.startedKeyguardTransitionStep, .transition( transitionInteractor.transition(Edge.create(from = KeyguardState.ALTERNATE_BOUNCER)) edge = Edge.create(from = KeyguardState.ALTERNATE_BOUNCER, to = Scenes.Gone), ) { startedStep, fromBouncerStep -> edgeWithoutSceneContainer = if (startedStep.to != KeyguardState.GONE) { Edge.create(from = KeyguardState.ALTERNATE_BOUNCER, to = KeyguardState.GONE) return@combine null ) } .map<TransitionStep, Boolean?> { // The alt bouncer is pretty fast to hide, so start the surface behind animation // The alt bouncer is pretty fast to hide, so start the surface behind animation // around 30%. // around 30%. fromBouncerStep.value > 0.3f it.value > 0.3f } } .onStart { .onStart { // Default to null ("don't care, use a reasonable default"). // Default to null ("don't care, use a reasonable default"). Loading packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt +10 −10 Original line number Original line Diff line number Diff line Loading @@ -24,16 +24,18 @@ import com.android.systemui.Flags import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.flags.FeatureFlags import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.StatusBarState.KEYGUARD import com.android.systemui.keyguard.shared.model.StatusBarState.KEYGUARD import com.android.systemui.keyguard.shared.model.TransitionInfo import com.android.systemui.keyguard.shared.model.TransitionInfo import com.android.systemui.keyguard.shared.model.TransitionModeOnCanceled import com.android.systemui.keyguard.shared.model.TransitionModeOnCanceled import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionStep import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.shade.data.repository.ShadeRepository import com.android.systemui.shade.data.repository.ShadeRepository import com.android.systemui.util.kotlin.Utils.Companion.sample as sampleCombine import com.android.systemui.util.kotlin.Utils.Companion.sample as sampleCombine import java.util.UUID import java.util.UUID Loading @@ -59,7 +61,6 @@ constructor( @Background bgDispatcher: CoroutineDispatcher, @Background bgDispatcher: CoroutineDispatcher, @Main mainDispatcher: CoroutineDispatcher, @Main mainDispatcher: CoroutineDispatcher, keyguardInteractor: KeyguardInteractor, keyguardInteractor: KeyguardInteractor, private val flags: FeatureFlags, private val shadeRepository: ShadeRepository, private val shadeRepository: ShadeRepository, powerInteractor: PowerInteractor, powerInteractor: PowerInteractor, private val glanceableHubTransitions: GlanceableHubTransitions, private val glanceableHubTransitions: GlanceableHubTransitions, Loading Loading @@ -97,14 +98,13 @@ constructor( * LOCKSCREEN is running. * LOCKSCREEN is running. */ */ val surfaceBehindVisibility: Flow<Boolean?> = val surfaceBehindVisibility: Flow<Boolean?> = transitionInteractor.startedKeyguardTransitionStep transitionInteractor .map { startedStep -> .transition( if (startedStep.to != KeyguardState.GONE) { edge = Edge.create(from = KeyguardState.LOCKSCREEN, to = Scenes.Gone), // LOCKSCREEN to anything but GONE does not require any special surface edgeWithoutSceneContainer = // visibility handling. Edge.create(from = KeyguardState.LOCKSCREEN, to = KeyguardState.GONE) return@map null ) } .map<TransitionStep, Boolean?> { true // Make the surface visible during LS -> GONE transitions. true // Make the surface visible during LS -> GONE transitions. } } .onStart { .onStart { Loading packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromPrimaryBouncerTransitionInteractor.kt +20 −20 Original line number Original line Diff line number Diff line Loading @@ -22,15 +22,14 @@ import com.android.systemui.communal.domain.interactor.CommunalInteractor import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.flags.FeatureFlags import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionModeOnCanceled import com.android.systemui.keyguard.shared.model.TransitionModeOnCanceled import com.android.systemui.keyguard.shared.model.TransitionStep import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.user.domain.interactor.SelectedUserInteractor import com.android.systemui.user.domain.interactor.SelectedUserInteractor import com.android.systemui.util.kotlin.Utils.Companion.sample import com.android.systemui.util.kotlin.Utils.Companion.sample import com.android.systemui.util.kotlin.sample import com.android.systemui.util.kotlin.sample Loading @@ -40,8 +39,9 @@ import kotlin.time.Duration.Companion.milliseconds import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.flowOf import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.launch import kotlinx.coroutines.launch Loading @@ -56,7 +56,6 @@ constructor( @Main mainDispatcher: CoroutineDispatcher, @Main mainDispatcher: CoroutineDispatcher, keyguardInteractor: KeyguardInteractor, keyguardInteractor: KeyguardInteractor, private val communalInteractor: CommunalInteractor, private val communalInteractor: CommunalInteractor, private val flags: FeatureFlags, private val keyguardSecurityModel: KeyguardSecurityModel, private val keyguardSecurityModel: KeyguardSecurityModel, private val selectedUserInteractor: SelectedUserInteractor, private val selectedUserInteractor: SelectedUserInteractor, powerInteractor: PowerInteractor, powerInteractor: PowerInteractor, Loading @@ -81,24 +80,25 @@ constructor( } } val surfaceBehindVisibility: Flow<Boolean?> = val surfaceBehindVisibility: Flow<Boolean?> = combine( if (SceneContainerFlag.isEnabled) { transitionInteractor.startedKeyguardTransitionStep, // The edge Scenes.Bouncer <-> Scenes.Gone is handled by STL transitionInteractor.transition( flowOf(null) edge = Edge.create(from = Scenes.Bouncer), } else { edgeWithoutSceneContainer = Edge.create(from = KeyguardState.PRIMARY_BOUNCER) transitionInteractor .transition( edge = Edge.INVALID, edgeWithoutSceneContainer = Edge.create(from = KeyguardState.PRIMARY_BOUNCER, to = KeyguardState.GONE) ) ) ) { startedStep, fromBouncerStep -> .map<TransitionStep, Boolean?> { if (startedStep.to != KeyguardState.GONE) { it.value > TO_GONE_SURFACE_BEHIND_VISIBLE_THRESHOLD return@combine null } fromBouncerStep.value > TO_GONE_SURFACE_BEHIND_VISIBLE_THRESHOLD } } .onStart { .onStart { // Default to null ("don't care, use a reasonable default"). // Default to null ("don't care, use a reasonable default"). emit(null) emit(null) } } .distinctUntilChanged() .distinctUntilChanged() } fun dismissPrimaryBouncer() { fun dismissPrimaryBouncer() { scope.launch { startTransitionTo(KeyguardState.GONE) } scope.launch { startTransitionTo(KeyguardState.GONE) } Loading packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractorKosmos.kt +0 −2 Original line number Original line Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.systemui.keyguard.domain.interactor package com.android.systemui.keyguard.domain.interactor import com.android.systemui.flags.featureFlagsClassic import com.android.systemui.keyguard.data.repository.keyguardTransitionRepository import com.android.systemui.keyguard.data.repository.keyguardTransitionRepository import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.applicationCoroutineScope import com.android.systemui.kosmos.applicationCoroutineScope Loading @@ -34,7 +33,6 @@ var Kosmos.fromLockscreenTransitionInteractor by bgDispatcher = testDispatcher, bgDispatcher = testDispatcher, mainDispatcher = testDispatcher, mainDispatcher = testDispatcher, keyguardInteractor = keyguardInteractor, keyguardInteractor = keyguardInteractor, flags = featureFlagsClassic, shadeRepository = shadeRepository, shadeRepository = shadeRepository, powerInteractor = powerInteractor, powerInteractor = powerInteractor, glanceableHubTransitions = glanceableHubTransitions, glanceableHubTransitions = glanceableHubTransitions, Loading packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/domain/interactor/FromPrimaryBouncerTransitionInteractorKosmos.kt +0 −2 Original line number Original line Diff line number Diff line Loading @@ -18,7 +18,6 @@ package com.android.systemui.keyguard.domain.interactor import com.android.keyguard.keyguardSecurityModel import com.android.keyguard.keyguardSecurityModel import com.android.systemui.communal.domain.interactor.communalInteractor import com.android.systemui.communal.domain.interactor.communalInteractor import com.android.systemui.flags.featureFlagsClassic import com.android.systemui.keyguard.data.repository.keyguardTransitionRepository import com.android.systemui.keyguard.data.repository.keyguardTransitionRepository import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.applicationCoroutineScope import com.android.systemui.kosmos.applicationCoroutineScope Loading @@ -37,7 +36,6 @@ var Kosmos.fromPrimaryBouncerTransitionInteractor by mainDispatcher = testDispatcher, mainDispatcher = testDispatcher, keyguardInteractor = keyguardInteractor, keyguardInteractor = keyguardInteractor, communalInteractor = communalInteractor, communalInteractor = communalInteractor, flags = featureFlagsClassic, keyguardSecurityModel = keyguardSecurityModel, keyguardSecurityModel = keyguardSecurityModel, selectedUserInteractor = selectedUserInteractor, selectedUserInteractor = selectedUserInteractor, powerInteractor = powerInteractor, powerInteractor = powerInteractor, Loading Loading
packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromAlternateBouncerTransitionInteractor.kt +11 −11 Original line number Original line Diff line number Diff line Loading @@ -26,8 +26,11 @@ import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionStep import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.util.kotlin.Utils.Companion.sample as sampleCombine import com.android.wm.shell.animation.Interpolators import com.android.wm.shell.animation.Interpolators import javax.inject.Inject import javax.inject.Inject import kotlin.time.Duration.Companion.milliseconds import kotlin.time.Duration.Companion.milliseconds Loading @@ -36,7 +39,6 @@ import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.delay import kotlinx.coroutines.delay import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.emptyFlow import kotlinx.coroutines.flow.emptyFlow import kotlinx.coroutines.flow.filter import kotlinx.coroutines.flow.filter Loading @@ -46,7 +48,6 @@ import kotlinx.coroutines.flow.merge import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.launch import kotlinx.coroutines.launch import com.android.systemui.util.kotlin.Utils.Companion.sample as sampleCombine @ExperimentalCoroutinesApi @ExperimentalCoroutinesApi @SysUISingleton @SysUISingleton Loading Loading @@ -82,17 +83,16 @@ constructor( } } val surfaceBehindVisibility: Flow<Boolean?> = val surfaceBehindVisibility: Flow<Boolean?> = combine( transitionInteractor transitionInteractor.startedKeyguardTransitionStep, .transition( transitionInteractor.transition(Edge.create(from = KeyguardState.ALTERNATE_BOUNCER)) edge = Edge.create(from = KeyguardState.ALTERNATE_BOUNCER, to = Scenes.Gone), ) { startedStep, fromBouncerStep -> edgeWithoutSceneContainer = if (startedStep.to != KeyguardState.GONE) { Edge.create(from = KeyguardState.ALTERNATE_BOUNCER, to = KeyguardState.GONE) return@combine null ) } .map<TransitionStep, Boolean?> { // The alt bouncer is pretty fast to hide, so start the surface behind animation // The alt bouncer is pretty fast to hide, so start the surface behind animation // around 30%. // around 30%. fromBouncerStep.value > 0.3f it.value > 0.3f } } .onStart { .onStart { // Default to null ("don't care, use a reasonable default"). // Default to null ("don't care, use a reasonable default"). Loading
packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt +10 −10 Original line number Original line Diff line number Diff line Loading @@ -24,16 +24,18 @@ import com.android.systemui.Flags import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.flags.FeatureFlags import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.StatusBarState.KEYGUARD import com.android.systemui.keyguard.shared.model.StatusBarState.KEYGUARD import com.android.systemui.keyguard.shared.model.TransitionInfo import com.android.systemui.keyguard.shared.model.TransitionInfo import com.android.systemui.keyguard.shared.model.TransitionModeOnCanceled import com.android.systemui.keyguard.shared.model.TransitionModeOnCanceled import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionStep import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.shade.data.repository.ShadeRepository import com.android.systemui.shade.data.repository.ShadeRepository import com.android.systemui.util.kotlin.Utils.Companion.sample as sampleCombine import com.android.systemui.util.kotlin.Utils.Companion.sample as sampleCombine import java.util.UUID import java.util.UUID Loading @@ -59,7 +61,6 @@ constructor( @Background bgDispatcher: CoroutineDispatcher, @Background bgDispatcher: CoroutineDispatcher, @Main mainDispatcher: CoroutineDispatcher, @Main mainDispatcher: CoroutineDispatcher, keyguardInteractor: KeyguardInteractor, keyguardInteractor: KeyguardInteractor, private val flags: FeatureFlags, private val shadeRepository: ShadeRepository, private val shadeRepository: ShadeRepository, powerInteractor: PowerInteractor, powerInteractor: PowerInteractor, private val glanceableHubTransitions: GlanceableHubTransitions, private val glanceableHubTransitions: GlanceableHubTransitions, Loading Loading @@ -97,14 +98,13 @@ constructor( * LOCKSCREEN is running. * LOCKSCREEN is running. */ */ val surfaceBehindVisibility: Flow<Boolean?> = val surfaceBehindVisibility: Flow<Boolean?> = transitionInteractor.startedKeyguardTransitionStep transitionInteractor .map { startedStep -> .transition( if (startedStep.to != KeyguardState.GONE) { edge = Edge.create(from = KeyguardState.LOCKSCREEN, to = Scenes.Gone), // LOCKSCREEN to anything but GONE does not require any special surface edgeWithoutSceneContainer = // visibility handling. Edge.create(from = KeyguardState.LOCKSCREEN, to = KeyguardState.GONE) return@map null ) } .map<TransitionStep, Boolean?> { true // Make the surface visible during LS -> GONE transitions. true // Make the surface visible during LS -> GONE transitions. } } .onStart { .onStart { Loading
packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromPrimaryBouncerTransitionInteractor.kt +20 −20 Original line number Original line Diff line number Diff line Loading @@ -22,15 +22,14 @@ import com.android.systemui.communal.domain.interactor.CommunalInteractor import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.flags.FeatureFlags import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.KeyguardWmStateRefactor import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.Edge import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionModeOnCanceled import com.android.systemui.keyguard.shared.model.TransitionModeOnCanceled import com.android.systemui.keyguard.shared.model.TransitionStep import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.power.domain.interactor.PowerInteractor import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.user.domain.interactor.SelectedUserInteractor import com.android.systemui.user.domain.interactor.SelectedUserInteractor import com.android.systemui.util.kotlin.Utils.Companion.sample import com.android.systemui.util.kotlin.Utils.Companion.sample import com.android.systemui.util.kotlin.sample import com.android.systemui.util.kotlin.sample Loading @@ -40,8 +39,9 @@ import kotlin.time.Duration.Companion.milliseconds import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.flowOf import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.launch import kotlinx.coroutines.launch Loading @@ -56,7 +56,6 @@ constructor( @Main mainDispatcher: CoroutineDispatcher, @Main mainDispatcher: CoroutineDispatcher, keyguardInteractor: KeyguardInteractor, keyguardInteractor: KeyguardInteractor, private val communalInteractor: CommunalInteractor, private val communalInteractor: CommunalInteractor, private val flags: FeatureFlags, private val keyguardSecurityModel: KeyguardSecurityModel, private val keyguardSecurityModel: KeyguardSecurityModel, private val selectedUserInteractor: SelectedUserInteractor, private val selectedUserInteractor: SelectedUserInteractor, powerInteractor: PowerInteractor, powerInteractor: PowerInteractor, Loading @@ -81,24 +80,25 @@ constructor( } } val surfaceBehindVisibility: Flow<Boolean?> = val surfaceBehindVisibility: Flow<Boolean?> = combine( if (SceneContainerFlag.isEnabled) { transitionInteractor.startedKeyguardTransitionStep, // The edge Scenes.Bouncer <-> Scenes.Gone is handled by STL transitionInteractor.transition( flowOf(null) edge = Edge.create(from = Scenes.Bouncer), } else { edgeWithoutSceneContainer = Edge.create(from = KeyguardState.PRIMARY_BOUNCER) transitionInteractor .transition( edge = Edge.INVALID, edgeWithoutSceneContainer = Edge.create(from = KeyguardState.PRIMARY_BOUNCER, to = KeyguardState.GONE) ) ) ) { startedStep, fromBouncerStep -> .map<TransitionStep, Boolean?> { if (startedStep.to != KeyguardState.GONE) { it.value > TO_GONE_SURFACE_BEHIND_VISIBLE_THRESHOLD return@combine null } fromBouncerStep.value > TO_GONE_SURFACE_BEHIND_VISIBLE_THRESHOLD } } .onStart { .onStart { // Default to null ("don't care, use a reasonable default"). // Default to null ("don't care, use a reasonable default"). emit(null) emit(null) } } .distinctUntilChanged() .distinctUntilChanged() } fun dismissPrimaryBouncer() { fun dismissPrimaryBouncer() { scope.launch { startTransitionTo(KeyguardState.GONE) } scope.launch { startTransitionTo(KeyguardState.GONE) } Loading
packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractorKosmos.kt +0 −2 Original line number Original line Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.systemui.keyguard.domain.interactor package com.android.systemui.keyguard.domain.interactor import com.android.systemui.flags.featureFlagsClassic import com.android.systemui.keyguard.data.repository.keyguardTransitionRepository import com.android.systemui.keyguard.data.repository.keyguardTransitionRepository import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.applicationCoroutineScope import com.android.systemui.kosmos.applicationCoroutineScope Loading @@ -34,7 +33,6 @@ var Kosmos.fromLockscreenTransitionInteractor by bgDispatcher = testDispatcher, bgDispatcher = testDispatcher, mainDispatcher = testDispatcher, mainDispatcher = testDispatcher, keyguardInteractor = keyguardInteractor, keyguardInteractor = keyguardInteractor, flags = featureFlagsClassic, shadeRepository = shadeRepository, shadeRepository = shadeRepository, powerInteractor = powerInteractor, powerInteractor = powerInteractor, glanceableHubTransitions = glanceableHubTransitions, glanceableHubTransitions = glanceableHubTransitions, Loading
packages/SystemUI/tests/utils/src/com/android/systemui/keyguard/domain/interactor/FromPrimaryBouncerTransitionInteractorKosmos.kt +0 −2 Original line number Original line Diff line number Diff line Loading @@ -18,7 +18,6 @@ package com.android.systemui.keyguard.domain.interactor import com.android.keyguard.keyguardSecurityModel import com.android.keyguard.keyguardSecurityModel import com.android.systemui.communal.domain.interactor.communalInteractor import com.android.systemui.communal.domain.interactor.communalInteractor import com.android.systemui.flags.featureFlagsClassic import com.android.systemui.keyguard.data.repository.keyguardTransitionRepository import com.android.systemui.keyguard.data.repository.keyguardTransitionRepository import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.Kosmos import com.android.systemui.kosmos.applicationCoroutineScope import com.android.systemui.kosmos.applicationCoroutineScope Loading @@ -37,7 +36,6 @@ var Kosmos.fromPrimaryBouncerTransitionInteractor by mainDispatcher = testDispatcher, mainDispatcher = testDispatcher, keyguardInteractor = keyguardInteractor, keyguardInteractor = keyguardInteractor, communalInteractor = communalInteractor, communalInteractor = communalInteractor, flags = featureFlagsClassic, keyguardSecurityModel = keyguardSecurityModel, keyguardSecurityModel = keyguardSecurityModel, selectedUserInteractor = selectedUserInteractor, selectedUserInteractor = selectedUserInteractor, powerInteractor = powerInteractor, powerInteractor = powerInteractor, Loading