Reset the keyguardGoingAway flag when keyguard is not dismissed.
LockIconViewController relies on KeyguardStateController#isKeyguardGoingAway() to determine whether keyguard is currently showing or not. This flag is set to true when the keyguard is almost completely dismissed by swiping up, but it is never reset to false when the swipe up is cancelled at the last minute. This change resets the flag if the lockscreen is not dismissed. Fixes: 233845417 Test: manually Test: atest com.android.keyguard Test: atest com.android.systemui.statusbar Change-Id: Ia36b6bb15de87a1b343e62772d52cbc6c760a504
This commit is contained in:
@@ -23,7 +23,6 @@ import static com.android.keyguard.LockIconView.ICON_LOCK;
|
||||
import static com.android.keyguard.LockIconView.ICON_UNLOCK;
|
||||
import static com.android.systemui.classifier.Classifier.LOCK_ICON;
|
||||
import static com.android.systemui.doze.util.BurnInHelperKt.getBurnInOffset;
|
||||
import static com.android.systemui.doze.util.BurnInHelperKt.getBurnInProgressOffset;
|
||||
|
||||
import android.content.res.Configuration;
|
||||
import android.content.res.Resources;
|
||||
@@ -403,7 +402,6 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
||||
float offsetY = MathUtils.lerp(0f,
|
||||
getBurnInOffset(mMaxBurnInOffsetY * 2, false /* xAxis */)
|
||||
- mMaxBurnInOffsetY, mInterpolatedDarkAmount);
|
||||
float progress = MathUtils.lerp(0f, getBurnInProgressOffset(), mInterpolatedDarkAmount);
|
||||
|
||||
mView.setTranslationX(offsetX);
|
||||
mView.setTranslationY(offsetY);
|
||||
|
||||
@@ -2706,7 +2706,7 @@ public class KeyguardViewMediator extends CoreStartable implements Dumpable,
|
||||
/** Hides the surface behind the keyguard by re-showing the keyguard/activity lock screen. */
|
||||
public void hideSurfaceBehindKeyguard() {
|
||||
mSurfaceBehindRemoteAnimationRequested = false;
|
||||
|
||||
mKeyguardStateController.notifyKeyguardGoingAway(false);
|
||||
if (mShowing) {
|
||||
setShowingLocked(true, true);
|
||||
}
|
||||
|
||||
@@ -203,6 +203,13 @@ public class KeyguardViewMediatorTest extends SysuiTestCase {
|
||||
mViewMediator.mViewMediatorCallback.getBouncerPromptReason());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHideSurfaceBehindKeyguardMarksKeyguardNotGoingAway() {
|
||||
mViewMediator.hideSurfaceBehindKeyguard();
|
||||
|
||||
verify(mKeyguardStateController).notifyKeyguardGoingAway(false);
|
||||
}
|
||||
|
||||
private void createAndStartViewMediator() {
|
||||
mViewMediator = new KeyguardViewMediator(
|
||||
mContext,
|
||||
|
||||
Reference in New Issue
Block a user