1 package com.android.systemui.flags 2 3 import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor 4 import com.android.systemui.keyguard.shared.model.KeyguardState 5 import dagger.Lazy 6 import javax.inject.Inject 7 import kotlinx.coroutines.flow.Flow 8 import kotlinx.coroutines.flow.map 9 10 /** Returns true when the device is "asleep" as defined by the [WakefullnessLifecycle]. */ 11 class NotOccludedCondition 12 @Inject 13 constructor( 14 private val keyguardTransitionInteractorLazy: Lazy<KeyguardTransitionInteractor>, 15 ) : ConditionalRestarter.Condition { 16 17 override val canRestartNow: Flow<Boolean> 18 get() { 19 return keyguardTransitionInteractorLazy 20 .get() 21 .transitionValue(KeyguardState.OCCLUDED) <lambda>null22 .map { it == 0f } 23 } 24 } 25