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

Commit 6cb5cc36 authored by Matt Pietal's avatar Matt Pietal
Browse files

Immediately set lockscreen alpha to 0f on DOZING->OCCLUDED...

... when light reveal animation doesn't play. Otherwise
the content will overlap.

Fixes: 363869127
Test: manual, observe DOZING->OCCLUDED
Flag: EXEMPT bugfix
Change-Id: I1214638e6a0fa20eed376af3e5cea9090d133609
parent 666c6eb4
Loading
Loading
Loading
Loading
+13 −2
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.systemui.keyguard.ui.viewmodel

import android.util.MathUtils
import com.android.systemui.Flags.lightRevealMigration
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.keyguard.domain.interactor.FromAodTransitionInteractor
import com.android.systemui.keyguard.shared.model.Edge
@@ -55,8 +56,18 @@ constructor(
        var currentAlpha = 0f
        return transitionAnimation.sharedFlow(
            duration = 250.milliseconds,
            startTime = 100.milliseconds, // Wait for the light reveal to "hit" the LS elements.
            onStart = { currentAlpha = viewState.alpha() },
            startTime = if (lightRevealMigration()) {
                100.milliseconds // Wait for the light reveal to "hit" the LS elements.
            } else {
                0.milliseconds
            },
            onStart = {
                if (lightRevealMigration()) {
                    currentAlpha = viewState.alpha()
                } else {
                    currentAlpha = 0f
                }
            },
            onStep = { MathUtils.lerp(currentAlpha, 0f, it) },
            onCancel = { 0f },
        )