Loading packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationWakeUpCoordinator.kt +15 −5 Original line number Original line Diff line number Diff line Loading @@ -38,7 +38,7 @@ import javax.inject.Singleton class NotificationWakeUpCoordinator @Inject constructor( class NotificationWakeUpCoordinator @Inject constructor( private val mContext: Context, private val mContext: Context, private val mHeadsUpManagerPhone: HeadsUpManagerPhone, private val mHeadsUpManagerPhone: HeadsUpManagerPhone, private val mStatusBarStateController: StatusBarStateController, private val statusBarStateController: StatusBarStateController, private val bypassController: KeyguardBypassController) private val bypassController: KeyguardBypassController) : OnHeadsUpChangedListener, StatusBarStateController.StateListener { : OnHeadsUpChangedListener, StatusBarStateController.StateListener { Loading Loading @@ -69,6 +69,8 @@ class NotificationWakeUpCoordinator @Inject constructor( private val mDozeParameters: DozeParameters private val mDozeParameters: DozeParameters private var pulseExpanding: Boolean = false private var pulseExpanding: Boolean = false private val wakeUpListeners = arrayListOf<WakeUpListener>() private val wakeUpListeners = arrayListOf<WakeUpListener>() private var state: Int = StatusBarState.KEYGUARD var fullyAwake: Boolean = false var fullyAwake: Boolean = false var willWakeUp = false var willWakeUp = false Loading Loading @@ -111,14 +113,14 @@ class NotificationWakeUpCoordinator @Inject constructor( if (bypassController.bypassEnabled) { if (bypassController.bypassEnabled) { // We also allow pulsing on the lock screen! // We also allow pulsing on the lock screen! canShow = canShow || (mWakingUp || willWakeUp || fullyAwake) canShow = canShow || (mWakingUp || willWakeUp || fullyAwake) && mStatusBarStateController.state == StatusBarState.KEYGUARD && statusBarStateController.state == StatusBarState.KEYGUARD } } return canShow return canShow } } init { init { mHeadsUpManagerPhone.addListener(this) mHeadsUpManagerPhone.addListener(this) mStatusBarStateController.addCallback(this) statusBarStateController.addCallback(this) mDozeParameters = DozeParameters.getInstance(mContext) mDozeParameters = DozeParameters.getInstance(mContext) } } Loading Loading @@ -217,13 +219,21 @@ class NotificationWakeUpCoordinator @Inject constructor( override fun onStateChanged(newState: Int) { override fun onStateChanged(newState: Int) { updateDozeAmountIfBypass(); updateDozeAmountIfBypass(); if (bypassController.bypassEnabled && newState == StatusBarState.KEYGUARD && state == StatusBarState.SHADE_LOCKED && (!statusBarStateController.isDozing || shouldAnimateVisibility())) { // We're leaving shade locked. Let's animate the notifications away setNotificationsVisible(visible = true, increaseSpeed = false, animate = false) setNotificationsVisible(visible = false, increaseSpeed = false, animate = true) } this.state = newState } } private fun updateDozeAmountIfBypass(): Boolean { private fun updateDozeAmountIfBypass(): Boolean { if (bypassController.bypassEnabled) { if (bypassController.bypassEnabled) { var amount = 1.0f; var amount = 1.0f; if (mStatusBarStateController.state == StatusBarState.SHADE if (statusBarStateController.state == StatusBarState.SHADE || mStatusBarStateController.state == StatusBarState.SHADE_LOCKED) { || statusBarStateController.state == StatusBarState.SHADE_LOCKED) { amount = 0.0f; amount = 0.0f; } } setDozeAmount(amount, amount) setDozeAmount(amount, amount) Loading Loading
packages/SystemUI/src/com/android/systemui/statusbar/notification/NotificationWakeUpCoordinator.kt +15 −5 Original line number Original line Diff line number Diff line Loading @@ -38,7 +38,7 @@ import javax.inject.Singleton class NotificationWakeUpCoordinator @Inject constructor( class NotificationWakeUpCoordinator @Inject constructor( private val mContext: Context, private val mContext: Context, private val mHeadsUpManagerPhone: HeadsUpManagerPhone, private val mHeadsUpManagerPhone: HeadsUpManagerPhone, private val mStatusBarStateController: StatusBarStateController, private val statusBarStateController: StatusBarStateController, private val bypassController: KeyguardBypassController) private val bypassController: KeyguardBypassController) : OnHeadsUpChangedListener, StatusBarStateController.StateListener { : OnHeadsUpChangedListener, StatusBarStateController.StateListener { Loading Loading @@ -69,6 +69,8 @@ class NotificationWakeUpCoordinator @Inject constructor( private val mDozeParameters: DozeParameters private val mDozeParameters: DozeParameters private var pulseExpanding: Boolean = false private var pulseExpanding: Boolean = false private val wakeUpListeners = arrayListOf<WakeUpListener>() private val wakeUpListeners = arrayListOf<WakeUpListener>() private var state: Int = StatusBarState.KEYGUARD var fullyAwake: Boolean = false var fullyAwake: Boolean = false var willWakeUp = false var willWakeUp = false Loading Loading @@ -111,14 +113,14 @@ class NotificationWakeUpCoordinator @Inject constructor( if (bypassController.bypassEnabled) { if (bypassController.bypassEnabled) { // We also allow pulsing on the lock screen! // We also allow pulsing on the lock screen! canShow = canShow || (mWakingUp || willWakeUp || fullyAwake) canShow = canShow || (mWakingUp || willWakeUp || fullyAwake) && mStatusBarStateController.state == StatusBarState.KEYGUARD && statusBarStateController.state == StatusBarState.KEYGUARD } } return canShow return canShow } } init { init { mHeadsUpManagerPhone.addListener(this) mHeadsUpManagerPhone.addListener(this) mStatusBarStateController.addCallback(this) statusBarStateController.addCallback(this) mDozeParameters = DozeParameters.getInstance(mContext) mDozeParameters = DozeParameters.getInstance(mContext) } } Loading Loading @@ -217,13 +219,21 @@ class NotificationWakeUpCoordinator @Inject constructor( override fun onStateChanged(newState: Int) { override fun onStateChanged(newState: Int) { updateDozeAmountIfBypass(); updateDozeAmountIfBypass(); if (bypassController.bypassEnabled && newState == StatusBarState.KEYGUARD && state == StatusBarState.SHADE_LOCKED && (!statusBarStateController.isDozing || shouldAnimateVisibility())) { // We're leaving shade locked. Let's animate the notifications away setNotificationsVisible(visible = true, increaseSpeed = false, animate = false) setNotificationsVisible(visible = false, increaseSpeed = false, animate = true) } this.state = newState } } private fun updateDozeAmountIfBypass(): Boolean { private fun updateDozeAmountIfBypass(): Boolean { if (bypassController.bypassEnabled) { if (bypassController.bypassEnabled) { var amount = 1.0f; var amount = 1.0f; if (mStatusBarStateController.state == StatusBarState.SHADE if (statusBarStateController.state == StatusBarState.SHADE || mStatusBarStateController.state == StatusBarState.SHADE_LOCKED) { || statusBarStateController.state == StatusBarState.SHADE_LOCKED) { amount = 0.0f; amount = 0.0f; } } setDozeAmount(amount, amount) setDozeAmount(amount, amount) Loading