diff options
2 files changed, 14 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java index d9e44c3..5077542 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java @@ -1329,6 +1329,16 @@ public class NotificationPanelView extends PanelView implements float notificationHeight = mNotificationStackScroller.getHeight() - mNotificationStackScroller.getEmptyBottomMargin() - mNotificationStackScroller.getTopPadding(); + + // When only empty shade view is visible in QS collapsed state, simulate that we would have + // it in expanded QS state as well so we don't run into troubles when fading the view in/out + // and expanding/collapsing the whole panel from/to quick settings. + if (mNotificationStackScroller.getNotGoneChildCount() == 0 + && mShadeEmpty) { + notificationHeight = mNotificationStackScroller.getEmptyShadeViewHeight() + + mNotificationStackScroller.getBottomStackPeekSize() + + mNotificationStackScroller.getCollapseSecondCardPadding(); + } float totalHeight = Math.max( mQsMaxExpansionHeight + mNotificationStackScroller.getNotificationTopPadding(), mClockPositionResult.stackScrollerPadding - mTopPaddingAdjustment) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java index 87ce565..d543cff 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java @@ -2272,6 +2272,10 @@ public class NotificationStackScrollLayout extends ViewGroup return height; } + public int getEmptyShadeViewHeight() { + return mEmptyShadeView.getHeight(); + } + public float getBottomMostNotificationBottom() { final int count = getChildCount(); float max = 0; |