Merge "Fixed animation breakage when QS area tapped during expand/collapse" into tm-qpr-dev am: 4dfa86ae18
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20535896 Change-Id: I9422ba374cae6753d1ad0ace20045b2f29d64118 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -2072,6 +2072,13 @@ public final class NotificationPanelViewController implements Dumpable {
|
|||||||
mInitialTouchX = x;
|
mInitialTouchX = x;
|
||||||
initVelocityTracker();
|
initVelocityTracker();
|
||||||
trackMovement(event);
|
trackMovement(event);
|
||||||
|
float qsExpansionFraction = computeQsExpansionFraction();
|
||||||
|
// Intercept the touch if QS is between fully collapsed and fully expanded state
|
||||||
|
if (qsExpansionFraction > 0.0 && qsExpansionFraction < 1.0) {
|
||||||
|
mShadeLog.logMotionEvent(event,
|
||||||
|
"onQsIntercept: down action, QS partially expanded/collapsed");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
if (mKeyguardShowing
|
if (mKeyguardShowing
|
||||||
&& shouldQuickSettingsIntercept(mInitialTouchX, mInitialTouchY, 0)) {
|
&& shouldQuickSettingsIntercept(mInitialTouchX, mInitialTouchY, 0)) {
|
||||||
// Dragging down on the lockscreen statusbar should prohibit other interactions
|
// Dragging down on the lockscreen statusbar should prohibit other interactions
|
||||||
@@ -2324,6 +2331,13 @@ public final class NotificationPanelViewController implements Dumpable {
|
|||||||
if (!isFullyCollapsed()) {
|
if (!isFullyCollapsed()) {
|
||||||
handleQsDown(event);
|
handleQsDown(event);
|
||||||
}
|
}
|
||||||
|
// defer touches on QQS to shade while shade is collapsing. Added margin for error
|
||||||
|
// as sometimes the qsExpansionFraction can be a tiny value instead of 0 when in QQS.
|
||||||
|
if (computeQsExpansionFraction() <= 0.01 && getExpandedFraction() < 1.0) {
|
||||||
|
mShadeLog.logMotionEvent(event,
|
||||||
|
"handleQsTouch: QQS touched while shade collapsing");
|
||||||
|
mQsTracking = false;
|
||||||
|
}
|
||||||
if (!mQsExpandImmediate && mQsTracking) {
|
if (!mQsExpandImmediate && mQsTracking) {
|
||||||
onQsTouch(event);
|
onQsTouch(event);
|
||||||
if (!mConflictingQsExpansionGesture && !mSplitShadeEnabled) {
|
if (!mConflictingQsExpansionGesture && !mSplitShadeEnabled) {
|
||||||
@@ -2564,7 +2578,6 @@ public final class NotificationPanelViewController implements Dumpable {
|
|||||||
// Reset scroll position and apply that position to the expanded height.
|
// Reset scroll position and apply that position to the expanded height.
|
||||||
float height = mQsExpansionHeight;
|
float height = mQsExpansionHeight;
|
||||||
setQsExpansionHeight(height);
|
setQsExpansionHeight(height);
|
||||||
updateExpandedHeightToMaxHeight();
|
|
||||||
mNotificationStackScrollLayoutController.checkSnoozeLeavebehind();
|
mNotificationStackScrollLayoutController.checkSnoozeLeavebehind();
|
||||||
|
|
||||||
// When expanding QS, let's authenticate the user if possible,
|
// When expanding QS, let's authenticate the user if possible,
|
||||||
|
|||||||
Reference in New Issue
Block a user