Fixed a grey flash when swiping away the last notification

Change-Id: I12edf673f29abad66fa6704004886124eee9978b
Fixes: 32289359
Test: have 1 notification, swipe it a way, observe no flashing in statusbar
This commit is contained in:
Selim Cinek
2016-10-19 16:49:44 -07:00
parent fee89015c5
commit 54680901ed

View File

@@ -1853,24 +1853,34 @@ public class NotificationStackScrollLayout extends ViewGroup
}
updateBackgroundBounds();
if (!mCurrentBounds.equals(mBackgroundBounds)) {
if (mAnimateNextBackgroundTop || mAnimateNextBackgroundBottom || areBoundsAnimating()) {
boolean animate = mAnimateNextBackgroundTop || mAnimateNextBackgroundBottom
|| areBoundsAnimating();
if (!isExpanded()) {
abortBackgroundAnimators();
animate = false;
}
if (animate) {
startBackgroundAnimation();
} else {
mCurrentBounds.set(mBackgroundBounds);
applyCurrentBackgroundBounds();
}
} else {
if (mBottomAnimator != null) {
mBottomAnimator.cancel();
}
if (mTopAnimator != null) {
mTopAnimator.cancel();
}
abortBackgroundAnimators();
}
mAnimateNextBackgroundBottom = false;
mAnimateNextBackgroundTop = false;
}
private void abortBackgroundAnimators() {
if (mBottomAnimator != null) {
mBottomAnimator.cancel();
}
if (mTopAnimator != null) {
mTopAnimator.cancel();
}
}
private boolean areBoundsAnimating() {
return mBottomAnimator != null || mTopAnimator != null;
}