Fixed an issue where the background could show in a wrong way

Change-Id: Icefeb2275d6cbabc576c35990ce4441b3a41ebd9
Fixes: 30855224
This commit is contained in:
Selim Cinek
2016-08-15 12:40:57 -07:00
parent 6af2db3824
commit d381bc3133

View File

@@ -412,7 +412,10 @@ public class NotificationStackScrollLayout extends ViewGroup
@Override
protected void onDraw(Canvas canvas) {
canvas.drawRect(0, mCurrentBounds.top, getWidth(), mCurrentBounds.bottom, mBackgroundPaint);
if (mCurrentBounds.top < mCurrentBounds.bottom) {
canvas.drawRect(0, mCurrentBounds.top, getWidth(), mCurrentBounds.bottom,
mBackgroundPaint);
}
if (DEBUG) {
int y = mTopPadding;
canvas.drawLine(0, y, getWidth(), y, mDebugPaint);
@@ -2013,11 +2016,12 @@ public class NotificationStackScrollLayout extends ViewGroup
bottom = top;
}
if (mPhoneStatusBar.getBarState() != StatusBarState.KEYGUARD) {
mBackgroundBounds.top = (int) Math.max(mTopPadding + mStackTranslation, top);
top = (int) Math.max(mTopPadding + mStackTranslation, top);
} else {
// otherwise the animation from the shade to the keyguard will jump as it's maxed
mBackgroundBounds.top = Math.max(0, top);
top = Math.max(0, top);
}
mBackgroundBounds.top = top;
mBackgroundBounds.bottom = Math.min(getHeight(), Math.max(bottom, top));
}