Loading packages/SystemUI/src/com/android/systemui/dreams/touch/BouncerSwipeTouchHandler.java +12 −4 Original line number Diff line number Diff line Loading @@ -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; Loading packages/SystemUI/tests/src/com/android/systemui/dreams/touch/BouncerSwipeTouchHandlerTest.java +4 −16 Original line number Diff line number Diff line Loading @@ -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); Loading @@ -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); Loading @@ -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)); } /** Loading Loading
packages/SystemUI/src/com/android/systemui/dreams/touch/BouncerSwipeTouchHandler.java +12 −4 Original line number Diff line number Diff line Loading @@ -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; Loading
packages/SystemUI/tests/src/com/android/systemui/dreams/touch/BouncerSwipeTouchHandlerTest.java +4 −16 Original line number Diff line number Diff line Loading @@ -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); Loading @@ -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); Loading @@ -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)); } /** Loading