Merge "Don't set expansion for downward (upward) scroll when the bouncer is hidden (shown)." into tm-dev
This commit is contained in:
@@ -117,15 +117,23 @@ public class BouncerSwipeTouchHandler implements DreamTouchHandler {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Don't set expansion for downward scroll when the bouncer is hidden.
|
||||
if (!mBouncerInitiallyShowing && (e1.getY() < e2.getY())) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Don't set expansion for upward scroll when the bouncer is shown.
|
||||
if (mBouncerInitiallyShowing && (e1.getY() > e2.getY())) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// For consistency, we adopt the expansion definition found in the
|
||||
// PanelViewController. In this case, expansion refers to the view above the
|
||||
// bouncer. As that view's expansion shrinks, the bouncer appears. The bouncer
|
||||
// is fully hidden at full expansion (1) and fully visible when fully collapsed
|
||||
// (0).
|
||||
final float dy = mBouncerInitiallyShowing ? e2.getY() - e1.getY()
|
||||
: e1.getY() - e2.getY();
|
||||
final float screenTravelPercentage = Math.max(0,
|
||||
dy / mCentralSurfaces.getDisplayHeight());
|
||||
final float screenTravelPercentage = Math.abs(e1.getY() - e2.getY())
|
||||
/ mCentralSurfaces.getDisplayHeight();
|
||||
setPanelExpansion(mBouncerInitiallyShowing
|
||||
? screenTravelPercentage : 1 - screenTravelPercentage);
|
||||
return true;
|
||||
|
||||
@@ -169,7 +169,7 @@ public class BouncerSwipeTouchHandlerTest extends SysuiTestCase {
|
||||
* Makes sure swiping up when bouncer initially showing doesn't change the expansion amount.
|
||||
*/
|
||||
@Test
|
||||
public void testSwipeUp_whenBouncerInitiallyShowing_keepsExpansionAtZero() {
|
||||
public void testSwipeUp_whenBouncerInitiallyShowing_doesNotSetExpansion() {
|
||||
when(mCentralSurfaces.isBouncerShowing()).thenReturn(true);
|
||||
|
||||
mTouchHandler.onSessionStart(mTouchSession);
|
||||
@@ -191,21 +191,15 @@ public class BouncerSwipeTouchHandlerTest extends SysuiTestCase {
|
||||
assertThat(gestureListener.onScroll(event1, event2, 0, distanceY))
|
||||
.isTrue();
|
||||
|
||||
// Ensure only called once
|
||||
verify(mStatusBarKeyguardViewManager)
|
||||
verify(mStatusBarKeyguardViewManager, never())
|
||||
.onPanelExpansionChanged(anyFloat(), anyBoolean(), anyBoolean());
|
||||
|
||||
// TODO(b/227348372): update the logic and also this test.
|
||||
// Ensure the expansion is kept at 0.
|
||||
verify(mStatusBarKeyguardViewManager).onPanelExpansionChanged(eq(0f), eq(false),
|
||||
eq(true));
|
||||
}
|
||||
|
||||
/**
|
||||
* Makes sure swiping down when bouncer initially hidden doesn't change the expansion amount.
|
||||
*/
|
||||
@Test
|
||||
public void testSwipeDown_whenBouncerInitiallyHidden_keepsExpansionAtOne() {
|
||||
public void testSwipeDown_whenBouncerInitiallyHidden_doesNotSetExpansion() {
|
||||
mTouchHandler.onSessionStart(mTouchSession);
|
||||
ArgumentCaptor<GestureDetector.OnGestureListener> gestureListenerCaptor =
|
||||
ArgumentCaptor.forClass(GestureDetector.OnGestureListener.class);
|
||||
@@ -225,14 +219,8 @@ public class BouncerSwipeTouchHandlerTest extends SysuiTestCase {
|
||||
assertThat(gestureListener.onScroll(event1, event2, 0, distanceY))
|
||||
.isTrue();
|
||||
|
||||
// Ensure only called once
|
||||
verify(mStatusBarKeyguardViewManager)
|
||||
verify(mStatusBarKeyguardViewManager, never())
|
||||
.onPanelExpansionChanged(anyFloat(), anyBoolean(), anyBoolean());
|
||||
|
||||
// TODO(b/227348372): update the logic and also this test.
|
||||
// Ensure the expansion is kept at 1.
|
||||
verify(mStatusBarKeyguardViewManager).onPanelExpansionChanged(eq(1f), eq(false),
|
||||
eq(true));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user