Fixing QS expanding in split shade when swipe happens on notifications

Now QuickSettings expand only when swipe begins on them, measured by
initial touch X position.
NSSL is receiving touches correctly from NotificationPanelViewController
(shouldn't be intercepted) but then if nothing wants to handle that
internally, it's passing it back to OnOverscrollTopChangedListener where
we are aware of split shade mode and can cancel expansion of quick settings.

Bug: 181235927
Test: manual
Change-Id: Ic288c468770bf199435fed9a0896f757e41fa721
This commit is contained in:
Michal Brzezinski
2021-04-15 17:02:31 +00:00
parent a6d011d092
commit b8836060f3

View File

@@ -3599,6 +3599,12 @@ public class NotificationPanelViewController extends PanelViewController {
@Override
public void flingTopOverscroll(float velocity, boolean open) {
// in split shade mode we want to expand/collapse QS only when touch happens within QS
if (mShouldUseSplitNotificationShade
&& (mInitialTouchX < mQsFrame.getX()
|| mInitialTouchX > mQsFrame.getX() + mQsFrame.getWidth())) {
return;
}
mLastOverscroll = 0f;
mQsExpansionFromOverscroll = false;
setQsExpansion(mQsExpansionHeight);