Loading packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt +15 −8 Original line number Diff line number Diff line Loading @@ -59,16 +59,23 @@ constructor( } private fun listenForLockscreenToDreaming() { val invalidFromStates = setOf(KeyguardState.AOD, KeyguardState.DOZING) scope.launch { keyguardInteractor.isAbleToDream .sample(keyguardTransitionInteractor.startedKeyguardTransitionStep, ::Pair) .collect { pair -> val (isAbleToDream, lastStartedTransition) = pair if ( isAbleToDream && .sample( combine( keyguardTransitionInteractor.startedKeyguardTransitionStep, keyguardTransitionInteractor.finishedKeyguardState, ::Pair ), ::toTriple ) .collect { (isAbleToDream, lastStartedTransition, finishedKeyguardState) -> val isOnLockscreen = finishedKeyguardState == KeyguardState.LOCKSCREEN val isTransitionInterruptible = lastStartedTransition.to == KeyguardState.LOCKSCREEN && lastStartedTransition.from != KeyguardState.AOD ) { !invalidFromStates.contains(lastStartedTransition.from) if (isAbleToDream && (isOnLockscreen || isTransitionInterruptible)) { keyguardTransitionRepository.startTransition( TransitionInfo( name, Loading packages/SystemUI/tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardTransitionScenariosTest.kt +84 −337 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/FromLockscreenTransitionInteractor.kt +15 −8 Original line number Diff line number Diff line Loading @@ -59,16 +59,23 @@ constructor( } private fun listenForLockscreenToDreaming() { val invalidFromStates = setOf(KeyguardState.AOD, KeyguardState.DOZING) scope.launch { keyguardInteractor.isAbleToDream .sample(keyguardTransitionInteractor.startedKeyguardTransitionStep, ::Pair) .collect { pair -> val (isAbleToDream, lastStartedTransition) = pair if ( isAbleToDream && .sample( combine( keyguardTransitionInteractor.startedKeyguardTransitionStep, keyguardTransitionInteractor.finishedKeyguardState, ::Pair ), ::toTriple ) .collect { (isAbleToDream, lastStartedTransition, finishedKeyguardState) -> val isOnLockscreen = finishedKeyguardState == KeyguardState.LOCKSCREEN val isTransitionInterruptible = lastStartedTransition.to == KeyguardState.LOCKSCREEN && lastStartedTransition.from != KeyguardState.AOD ) { !invalidFromStates.contains(lastStartedTransition.from) if (isAbleToDream && (isOnLockscreen || isTransitionInterruptible)) { keyguardTransitionRepository.startTransition( TransitionInfo( name, Loading
packages/SystemUI/tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardTransitionScenariosTest.kt +84 −337 File changed.Preview size limit exceeded, changes collapsed. Show changes