Fix state weirdness in the panel
When QS was open while the we started with expansion, we immediately notified about expansion finsihed again, which led to all kinds of weird states. The change that introduced these bugs was to fix another bug in which onExpandingFinished was not call. Make sure to call in exactly that case and no other case to not risk regressions. Bug: 22806817 Bug: 22807359 Bug: 22807372 Change-Id: Id7daf37ef4a772f724971bf79c61084ff4279f31
This commit is contained in:
@@ -626,6 +626,7 @@ public class NotificationPanelView extends PanelView implements
|
||||
&& shouldQuickSettingsIntercept(mInitialTouchX, mInitialTouchY, h)) {
|
||||
mQsTracking = true;
|
||||
onQsExpansionStarted();
|
||||
notifyExpandingFinished();
|
||||
mInitialHeightOnTouch = mQsExpansionHeight;
|
||||
mInitialTouchY = y;
|
||||
mInitialTouchX = x;
|
||||
@@ -825,9 +826,7 @@ public class NotificationPanelView extends PanelView implements
|
||||
mInitialTouchX = event.getY();
|
||||
|
||||
// If we interrupt an expansion gesture here, make sure to update the state correctly.
|
||||
if (mIsExpanding) {
|
||||
onExpandingFinished();
|
||||
}
|
||||
notifyExpandingFinished();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -970,7 +969,6 @@ public class NotificationPanelView extends PanelView implements
|
||||
private void onQsExpansionStarted(int overscrollAmount) {
|
||||
cancelQsAnimation();
|
||||
cancelHeightAnimator();
|
||||
notifyExpandingFinished();
|
||||
|
||||
// Reset scroll position and apply that position to the expanded height.
|
||||
float height = mQsExpansionHeight - mScrollView.getScrollY() - overscrollAmount;
|
||||
|
||||
Reference in New Issue
Block a user