diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java index fe76ae751520..cafa566c94df 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java @@ -89,6 +89,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, private boolean mForceHideScrims; private boolean mSkipFirstFrame; private boolean mDontAnimateBouncerChanges; + private boolean mKeyguardFadingOutInProgress; public ScrimController(ScrimView scrimBehind, ScrimView scrimInFront, View headsUpScrim, boolean scrimSrcEnabled) { @@ -331,12 +332,16 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, if (mOnAnimationFinished != null) { mOnAnimationFinished.run(); mOnAnimationFinished = null; + mKeyguardFadingOutInProgress = false; } scrim.setTag(TAG_KEY_ANIM, null); scrim.setTag(TAG_KEY_ANIM_TARGET, null); } }); anim.start(); + if (mAnimateKeyguardFadingOut) { + mKeyguardFadingOutInProgress = true; + } if (mSkipFirstFrame) { anim.setCurrentPlayTime(16); } @@ -371,6 +376,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, && mOnAnimationFinished != null) { mOnAnimationFinished.run(); mOnAnimationFinished = null; + mKeyguardFadingOutInProgress = false; } } @@ -423,6 +429,10 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, } private void updateScrim(boolean animate, View scrim, float alpha, float currentAlpha) { + if (mKeyguardFadingOutInProgress) { + return; + } + ValueAnimator previousAnimator = StackStateAnimator.getChildTag(scrim, TAG_KEY_ANIM); float animEndValue = -1; |