Merge "Fixing QS reacting to touches in notifications area in split shade" into sc-v2-dev am: df844e0c3a
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15675160 Change-Id: I271c0f59fb1aa2f3cb9a5e7ab249e2dfc2160121
This commit is contained in:
@@ -1900,6 +1900,9 @@ public class NotificationPanelViewController extends PanelViewController {
|
||||
|
||||
|
||||
private boolean handleQsTouch(MotionEvent event) {
|
||||
if (mShouldUseSplitNotificationShade && touchXOutsideOfQs(event.getX())) {
|
||||
return false;
|
||||
}
|
||||
final int action = event.getActionMasked();
|
||||
if (action == MotionEvent.ACTION_DOWN && getExpandedFraction() == 1f
|
||||
&& mBarState != KEYGUARD && !mQsExpanded && isQsExpansionEnabled()) {
|
||||
@@ -1941,8 +1944,12 @@ public class NotificationPanelViewController extends PanelViewController {
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean touchXOutsideOfQs(float touchX) {
|
||||
return touchX < mQsFrame.getX() || touchX > mQsFrame.getX() + mQsFrame.getWidth();
|
||||
}
|
||||
|
||||
private boolean isInQsArea(float x, float y) {
|
||||
if (x < mQsFrame.getX() || x > mQsFrame.getX() + mQsFrame.getWidth()) {
|
||||
if (touchXOutsideOfQs(x)) {
|
||||
return false;
|
||||
}
|
||||
// Let's reject anything at the very bottom around the home handle in gesture nav
|
||||
@@ -4086,9 +4093,7 @@ 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())) {
|
||||
if (mShouldUseSplitNotificationShade && touchXOutsideOfQs(mInitialTouchX)) {
|
||||
return;
|
||||
}
|
||||
mLastOverscroll = 0f;
|
||||
|
||||
Reference in New Issue
Block a user