Fixed consistent flicker on shade open after multitouch
Bug was triggered by skipped ACTION_DOWN after multitouch breaking the shade. The flicker was caused by mTracking not being properly set, and the mInitialExpandY not being reset from the previous gesture caused the shade to require a much longer swipe to begin expanding. Bug: 264665511 Test: manual Change-Id: I9a1a93d9661d6c3cd69356883e12a04010641d3b
This commit is contained in:
@@ -4958,8 +4958,12 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
beginJankMonitoring();
|
||||
}
|
||||
mInitialOffsetOnTouch = expandedHeight;
|
||||
mInitialExpandY = newY;
|
||||
mInitialExpandX = newX;
|
||||
if (!mTracking || isFullyCollapsed()) {
|
||||
mInitialExpandY = newY;
|
||||
mInitialExpandX = newX;
|
||||
} else {
|
||||
mShadeLog.d("not setting mInitialExpandY in startExpandMotion");
|
||||
}
|
||||
mInitialTouchFromKeyguard = mKeyguardStateController.isShowing();
|
||||
if (startTracking) {
|
||||
mTouchSlopExceeded = true;
|
||||
@@ -6143,8 +6147,12 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
+ " false");
|
||||
return true;
|
||||
}
|
||||
mInitialExpandY = y;
|
||||
mInitialExpandX = x;
|
||||
if (!mTracking || isFullyCollapsed()) {
|
||||
mInitialExpandY = y;
|
||||
mInitialExpandX = x;
|
||||
} else {
|
||||
mShadeLog.d("not setting mInitialExpandY in onInterceptTouch");
|
||||
}
|
||||
mTouchStartedInEmptyArea = !isInContentBounds(x, y);
|
||||
mTouchSlopExceeded = mTouchSlopExceededBeforeDown;
|
||||
mMotionAborted = false;
|
||||
@@ -6333,7 +6341,8 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
final float x = event.getX(pointerIndex);
|
||||
final float y = event.getY(pointerIndex);
|
||||
|
||||
if (event.getActionMasked() == MotionEvent.ACTION_DOWN) {
|
||||
if (event.getActionMasked() == MotionEvent.ACTION_DOWN
|
||||
|| event.getActionMasked() == MotionEvent.ACTION_MOVE) {
|
||||
mGestureWaitForTouchSlop = shouldGestureWaitForTouchSlop();
|
||||
mIgnoreXTouchSlop = true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user