Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java +6 −12 Original line number Diff line number Diff line Loading @@ -590,6 +590,8 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo setScrimAlpha(mScrimInFront, mInFrontAlpha); setScrimAlpha(mScrimBehind, mBehindAlpha); setScrimAlpha(mScrimForBubble, mBubbleAlpha); // The animation could have all already finished, let's call onFinished just in case onFinished(); dispatchScrimsVisible(); } Loading Loading @@ -688,9 +690,9 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo @Override public void onAnimationEnd(Animator animation) { scrim.setTag(TAG_KEY_ANIM, null); onFinished(lastCallback); scrim.setTag(TAG_KEY_ANIM, null); dispatchScrimsVisible(); if (!mDeferFinishedListener && mOnAnimationFinished != null) { Loading Loading @@ -754,9 +756,9 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo } private void onFinished(Callback callback) { if (!hasReachedFinalState(mScrimBehind) || !hasReachedFinalState(mScrimInFront) || !hasReachedFinalState(mScrimForBubble)) { if (isAnimating(mScrimBehind) || isAnimating(mScrimInFront) || isAnimating(mScrimForBubble)) { if (callback != null && callback != mCallback) { // Since we only notify the callback that we're finished once everything has // finished, we need to make sure that any changing callbacks are also invoked Loading Loading @@ -789,11 +791,6 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo } } private boolean hasReachedFinalState(ScrimView scrim) { return scrim.getViewAlpha() == getCurrentScrimAlpha(scrim) && scrim.getTint() == getCurrentScrimTint(scrim); } private boolean isAnimating(View scrim) { return scrim.getTag(TAG_KEY_ANIM) != null; } Loading Loading @@ -849,10 +846,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo } else { // update the alpha directly updateScrimColor(scrim, alpha, getCurrentScrimTint(scrim)); onFinished(); } } else { onFinished(); } } Loading Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java +6 −12 Original line number Diff line number Diff line Loading @@ -590,6 +590,8 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo setScrimAlpha(mScrimInFront, mInFrontAlpha); setScrimAlpha(mScrimBehind, mBehindAlpha); setScrimAlpha(mScrimForBubble, mBubbleAlpha); // The animation could have all already finished, let's call onFinished just in case onFinished(); dispatchScrimsVisible(); } Loading Loading @@ -688,9 +690,9 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo @Override public void onAnimationEnd(Animator animation) { scrim.setTag(TAG_KEY_ANIM, null); onFinished(lastCallback); scrim.setTag(TAG_KEY_ANIM, null); dispatchScrimsVisible(); if (!mDeferFinishedListener && mOnAnimationFinished != null) { Loading Loading @@ -754,9 +756,9 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo } private void onFinished(Callback callback) { if (!hasReachedFinalState(mScrimBehind) || !hasReachedFinalState(mScrimInFront) || !hasReachedFinalState(mScrimForBubble)) { if (isAnimating(mScrimBehind) || isAnimating(mScrimInFront) || isAnimating(mScrimForBubble)) { if (callback != null && callback != mCallback) { // Since we only notify the callback that we're finished once everything has // finished, we need to make sure that any changing callbacks are also invoked Loading Loading @@ -789,11 +791,6 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo } } private boolean hasReachedFinalState(ScrimView scrim) { return scrim.getViewAlpha() == getCurrentScrimAlpha(scrim) && scrim.getTint() == getCurrentScrimTint(scrim); } private boolean isAnimating(View scrim) { return scrim.getTag(TAG_KEY_ANIM) != null; } Loading Loading @@ -849,10 +846,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo } else { // update the alpha directly updateScrimColor(scrim, alpha, getCurrentScrimTint(scrim)); onFinished(); } } else { onFinished(); } } Loading