Fixed an issue where the statusview could become clipped

In split shade, we were not resetting the clip bounds.

Bug: 184946919
Test: start drag down on portrait, rotate
Change-Id: I9d77c818aa6a97fb5d1632a1d959d9ac5579815b
This commit is contained in:
Selim Cinek
2021-05-26 19:20:25 +02:00
parent b89445a694
commit 47d2f50ecf

View File

@@ -2236,11 +2236,11 @@ public class NotificationPanelViewController extends PanelViewController {
// Fancy clipping for quick settings
int radius = mScrimCornerRadius;
int statusBarClipTop = 0;
boolean clipStatusView = false;
if (!mShouldUseSplitNotificationShade) {
// The padding on this area is large enough that we can use a cheaper clipping strategy
mKeyguardStatusAreaClipBounds.set(left, top, right, bottom);
mKeyguardStatusViewController.setClipBounds(visible
? mKeyguardStatusAreaClipBounds : null);
clipStatusView = visible;
radius = (int) MathUtils.lerp(mScreenCornerRadius, mScrimCornerRadius,
Math.min(top / (float) mScrimCornerRadius, 1f));
statusBarClipTop = top - mKeyguardStatusBar.getTop();
@@ -2248,6 +2248,8 @@ public class NotificationPanelViewController extends PanelViewController {
if (mQs != null) {
mQs.setFancyClipping(top, bottom, radius, visible);
}
mKeyguardStatusViewController.setClipBounds(
clipStatusView ? mKeyguardStatusAreaClipBounds : null);
mScrimController.setNotificationsBounds(left, top, right, bottom);
mScrimController.setScrimCornerRadius(radius);
mKeyguardStatusBar.setTopClipping(statusBarClipTop);