Loading packages/SystemUI/src/com/android/systemui/keyguard/ui/transitions/DeviceEntryIconTransitionModule.kt +7 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ import com.android.systemui.keyguard.ui.viewmodel.LockscreenToOccludedTransition import com.android.systemui.keyguard.ui.viewmodel.LockscreenToPrimaryBouncerTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.OccludedToAodTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.OccludedToLockscreenTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.OffToLockscreenTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToAodTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToDozingTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToLockscreenTransitionViewModel Loading Loading @@ -194,6 +195,12 @@ abstract class DeviceEntryIconTransitionModule { impl: OccludedToLockscreenTransitionViewModel ): DeviceEntryIconTransition @Binds @IntoSet abstract fun offToLockscreen( impl: OffToLockscreenTransitionViewModel ): DeviceEntryIconTransition @Binds @IntoSet abstract fun primaryBouncerToAod( Loading packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModel.kt +34 −12 Original line number Diff line number Diff line Loading @@ -84,6 +84,7 @@ constructor( .map { it.deviceEntryParentViewAlpha } .merge() .shareIn(scope, SharingStarted.WhileSubscribed()) .onStart { emit(initialAlphaFromKeyguardState(transitionInteractor.getCurrentState())) } private val alphaMultiplierFromShadeExpansion: Flow<Float> = combine( showingAlternateBouncer, Loading @@ -97,6 +98,7 @@ constructor( (1f - shadeExpansion) * (1f - interpolatedQsProgress) } } .onStart { emit(1f) } // Burn-in offsets in AOD private val nonAnimatedBurnInOffsets: Flow<BurnInOffsets> = combine( Loading @@ -122,14 +124,34 @@ constructor( ) } val deviceEntryViewAlpha: StateFlow<Float> = val deviceEntryViewAlpha: Flow<Float> = combine( transitionAlpha, alphaMultiplierFromShadeExpansion, ) { alpha, alphaMultiplier -> alpha * alphaMultiplier } .stateIn(scope = scope, started = SharingStarted.WhileSubscribed(), initialValue = 0f) .stateIn( scope = scope, started = SharingStarted.WhileSubscribed(), initialValue = 0f, ) private fun initialAlphaFromKeyguardState(keyguardState: KeyguardState): Float { return when (keyguardState) { KeyguardState.OFF, KeyguardState.PRIMARY_BOUNCER, KeyguardState.DOZING, KeyguardState.DREAMING, KeyguardState.GLANCEABLE_HUB, KeyguardState.GONE, KeyguardState.OCCLUDED, KeyguardState.DREAMING_LOCKSCREEN_HOSTED, -> 0f KeyguardState.AOD, KeyguardState.ALTERNATE_BOUNCER, KeyguardState.LOCKSCREEN -> 1f } } val useBackgroundProtection: StateFlow<Boolean> = isUdfpsSupported val burnInOffsets: Flow<BurnInOffsets> = deviceEntryUdfpsInteractor.isUdfpsEnrolledAndEnabled Loading packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/OffToLockscreenTransitionViewModel.kt +5 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.keyguard.ui.viewmodel import com.android.systemui.dagger.SysUISingleton import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.ui.KeyguardTransitionAnimationFlow import com.android.systemui.keyguard.ui.transitions.DeviceEntryIconTransition import javax.inject.Inject import kotlin.time.Duration.Companion.milliseconds import kotlinx.coroutines.flow.Flow Loading @@ -28,7 +29,7 @@ class OffToLockscreenTransitionViewModel @Inject constructor( animationFlow: KeyguardTransitionAnimationFlow, ) { ) : DeviceEntryIconTransition { private val transitionAnimation = animationFlow.setup( Loading @@ -43,4 +44,7 @@ constructor( onStep = { it }, onCancel = { 0f }, ) override val deviceEntryParentViewAlpha: Flow<Float> = transitionAnimation.immediatelyTransitionTo(1f) } Loading
packages/SystemUI/src/com/android/systemui/keyguard/ui/transitions/DeviceEntryIconTransitionModule.kt +7 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ import com.android.systemui.keyguard.ui.viewmodel.LockscreenToOccludedTransition import com.android.systemui.keyguard.ui.viewmodel.LockscreenToPrimaryBouncerTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.OccludedToAodTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.OccludedToLockscreenTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.OffToLockscreenTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToAodTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToDozingTransitionViewModel import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToLockscreenTransitionViewModel Loading Loading @@ -194,6 +195,12 @@ abstract class DeviceEntryIconTransitionModule { impl: OccludedToLockscreenTransitionViewModel ): DeviceEntryIconTransition @Binds @IntoSet abstract fun offToLockscreen( impl: OffToLockscreenTransitionViewModel ): DeviceEntryIconTransition @Binds @IntoSet abstract fun primaryBouncerToAod( Loading
packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/DeviceEntryIconViewModel.kt +34 −12 Original line number Diff line number Diff line Loading @@ -84,6 +84,7 @@ constructor( .map { it.deviceEntryParentViewAlpha } .merge() .shareIn(scope, SharingStarted.WhileSubscribed()) .onStart { emit(initialAlphaFromKeyguardState(transitionInteractor.getCurrentState())) } private val alphaMultiplierFromShadeExpansion: Flow<Float> = combine( showingAlternateBouncer, Loading @@ -97,6 +98,7 @@ constructor( (1f - shadeExpansion) * (1f - interpolatedQsProgress) } } .onStart { emit(1f) } // Burn-in offsets in AOD private val nonAnimatedBurnInOffsets: Flow<BurnInOffsets> = combine( Loading @@ -122,14 +124,34 @@ constructor( ) } val deviceEntryViewAlpha: StateFlow<Float> = val deviceEntryViewAlpha: Flow<Float> = combine( transitionAlpha, alphaMultiplierFromShadeExpansion, ) { alpha, alphaMultiplier -> alpha * alphaMultiplier } .stateIn(scope = scope, started = SharingStarted.WhileSubscribed(), initialValue = 0f) .stateIn( scope = scope, started = SharingStarted.WhileSubscribed(), initialValue = 0f, ) private fun initialAlphaFromKeyguardState(keyguardState: KeyguardState): Float { return when (keyguardState) { KeyguardState.OFF, KeyguardState.PRIMARY_BOUNCER, KeyguardState.DOZING, KeyguardState.DREAMING, KeyguardState.GLANCEABLE_HUB, KeyguardState.GONE, KeyguardState.OCCLUDED, KeyguardState.DREAMING_LOCKSCREEN_HOSTED, -> 0f KeyguardState.AOD, KeyguardState.ALTERNATE_BOUNCER, KeyguardState.LOCKSCREEN -> 1f } } val useBackgroundProtection: StateFlow<Boolean> = isUdfpsSupported val burnInOffsets: Flow<BurnInOffsets> = deviceEntryUdfpsInteractor.isUdfpsEnrolledAndEnabled Loading
packages/SystemUI/src/com/android/systemui/keyguard/ui/viewmodel/OffToLockscreenTransitionViewModel.kt +5 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.keyguard.ui.viewmodel import com.android.systemui.dagger.SysUISingleton import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.ui.KeyguardTransitionAnimationFlow import com.android.systemui.keyguard.ui.transitions.DeviceEntryIconTransition import javax.inject.Inject import kotlin.time.Duration.Companion.milliseconds import kotlinx.coroutines.flow.Flow Loading @@ -28,7 +29,7 @@ class OffToLockscreenTransitionViewModel @Inject constructor( animationFlow: KeyguardTransitionAnimationFlow, ) { ) : DeviceEntryIconTransition { private val transitionAnimation = animationFlow.setup( Loading @@ -43,4 +44,7 @@ constructor( onStep = { it }, onCancel = { 0f }, ) override val deviceEntryParentViewAlpha: Flow<Float> = transitionAnimation.immediatelyTransitionTo(1f) }