Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e5b52c33 authored by Selim Cinek's avatar Selim Cinek Committed by android-build-merger
Browse files

Merge "Animating the shade when going back to the keyguard from shade locked" into qt-r1-dev

am: 0588aa51

Change-Id: Iaa1aa0747b3eb0ca4947a34fe66b24859d7d4eeb
parents cc88adbb 0588aa51
Loading
Loading
Loading
Loading
+15 −5
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@ import javax.inject.Singleton
class NotificationWakeUpCoordinator @Inject constructor(
        private val mContext: Context,
        private val mHeadsUpManagerPhone: HeadsUpManagerPhone,
        private val mStatusBarStateController: StatusBarStateController,
        private val statusBarStateController: StatusBarStateController,
        private val bypassController: KeyguardBypassController)
    : OnHeadsUpChangedListener, StatusBarStateController.StateListener {

@@ -69,6 +69,8 @@ class NotificationWakeUpCoordinator @Inject constructor(
    private val mDozeParameters: DozeParameters
    private var pulseExpanding: Boolean = false
    private val wakeUpListeners = arrayListOf<WakeUpListener>()
    private var state: Int = StatusBarState.KEYGUARD

    var fullyAwake: Boolean = false

    var willWakeUp = false
@@ -111,14 +113,14 @@ class NotificationWakeUpCoordinator @Inject constructor(
            if (bypassController.bypassEnabled) {
                // We also allow pulsing on the lock screen!
                canShow = canShow || (mWakingUp || willWakeUp || fullyAwake)
                        && mStatusBarStateController.state == StatusBarState.KEYGUARD
                        && statusBarStateController.state == StatusBarState.KEYGUARD
            }
            return canShow
        }

    init {
        mHeadsUpManagerPhone.addListener(this)
        mStatusBarStateController.addCallback(this)
        statusBarStateController.addCallback(this)
        mDozeParameters = DozeParameters.getInstance(mContext)
    }

@@ -217,13 +219,21 @@ class NotificationWakeUpCoordinator @Inject constructor(

    override fun onStateChanged(newState: Int) {
        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 {
        if (bypassController.bypassEnabled) {
            var amount = 1.0f;
            if (mStatusBarStateController.state == StatusBarState.SHADE
                    || mStatusBarStateController.state == StatusBarState.SHADE_LOCKED) {
            if (statusBarStateController.state == StatusBarState.SHADE
                    || statusBarStateController.state == StatusBarState.SHADE_LOCKED) {
                amount = 0.0f;
            }
            setDozeAmount(amount,  amount)