diff options
author | Vadim Tryshev <vadimt@google.com> | 2019-05-25 02:44:30 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2019-05-25 02:44:30 +0000 |
commit | ebd5e88164ef3a59cfe5f75a9eaeb95222ded7fa (patch) | |
tree | cfa0eeb6e5e43140d9d2fd9b57d74c5f04658a6a | |
parent | a8a98a16408de6b5b88105d786da4ebef5ec6745 (diff) | |
parent | 2d6cd80bc9c125d5212695da99c1b1ed47611443 (diff) | |
download | android_packages_apps_Trebuchet-ebd5e88164ef3a59cfe5f75a9eaeb95222ded7fa.tar.gz android_packages_apps_Trebuchet-ebd5e88164ef3a59cfe5f75a9eaeb95222ded7fa.tar.bz2 android_packages_apps_Trebuchet-ebd5e88164ef3a59cfe5f75a9eaeb95222ded7fa.zip |
Merge "Launcher reports whe 0-button swipe-up gesture pause is detected." into ub-launcher3-qt-dev
6 files changed, 23 insertions, 6 deletions
diff --git a/quickstep/src/com/android/quickstep/util/MotionPauseDetector.java b/quickstep/src/com/android/quickstep/util/MotionPauseDetector.java index 893c05356..801a5604f 100644 --- a/quickstep/src/com/android/quickstep/util/MotionPauseDetector.java +++ b/quickstep/src/com/android/quickstep/util/MotionPauseDetector.java @@ -21,6 +21,7 @@ import android.view.MotionEvent; import com.android.launcher3.Alarm; import com.android.launcher3.R; +import com.android.launcher3.compat.AccessibilityManagerCompat; /** * Given positions along x- or y-axis, tracks velocity and acceleration and determines when there is @@ -47,6 +48,7 @@ public class MotionPauseDetector { private final float mSpeedFast; private final Alarm mForcePauseTimeout; private final boolean mMakePauseHarderToTrigger; + private final Context mContext; private Long mPreviousTime = null; private Float mPreviousPosition = null; @@ -71,6 +73,7 @@ public class MotionPauseDetector { * @param makePauseHarderToTrigger Used for gestures that require a more explicit pause. */ public MotionPauseDetector(Context context, boolean makePauseHarderToTrigger) { + mContext = context; Resources res = context.getResources(); mSpeedVerySlow = res.getDimension(R.dimen.motion_pause_detector_speed_very_slow); mSpeedSlow = res.getDimension(R.dimen.motion_pause_detector_speed_slow); @@ -165,6 +168,7 @@ public class MotionPauseDetector { if (mIsPaused != isPaused) { mIsPaused = isPaused; if (mIsPaused) { + AccessibilityManagerCompat.sendPauseDetectedEventToTest(mContext); mHasEverBeenPaused = true; } if (mOnMotionPauseListener != null) { diff --git a/src/com/android/launcher3/allapps/AllAppsRecyclerView.java b/src/com/android/launcher3/allapps/AllAppsRecyclerView.java index 548d5de0e..a0e9dc5d8 100644 --- a/src/com/android/launcher3/allapps/AllAppsRecyclerView.java +++ b/src/com/android/launcher3/allapps/AllAppsRecyclerView.java @@ -425,7 +425,7 @@ public class AllAppsRecyclerView extends BaseRecyclerView implements LogContaine public void onScrollStateChanged(int state) { super.onScrollStateChanged(state); - if (state == SCROLL_STATE_IDLE && Utilities.IS_RUNNING_IN_TEST_HARNESS) { + if (state == SCROLL_STATE_IDLE) { AccessibilityManagerCompat.sendScrollFinishedEventToTest(getContext()); } } diff --git a/src/com/android/launcher3/compat/AccessibilityManagerCompat.java b/src/com/android/launcher3/compat/AccessibilityManagerCompat.java index 8e59d32bd..81c95cbdd 100644 --- a/src/com/android/launcher3/compat/AccessibilityManagerCompat.java +++ b/src/com/android/launcher3/compat/AccessibilityManagerCompat.java @@ -69,6 +69,13 @@ public class AccessibilityManagerCompat { sendEventToTest(accessibilityManager, TestProtocol.SCROLL_FINISHED_MESSAGE, null); } + public static void sendPauseDetectedEventToTest(Context context) { + final AccessibilityManager accessibilityManager = getAccessibilityManagerForTest(context); + if (accessibilityManager == null) return; + + sendEventToTest(accessibilityManager, TestProtocol.PAUSE_DETECTED_MESSAGE, null); + } + private static void sendEventToTest( AccessibilityManager accessibilityManager, String eventTag, Bundle data) { final AccessibilityEvent e = AccessibilityEvent.obtain( diff --git a/src/com/android/launcher3/testing/TestProtocol.java b/src/com/android/launcher3/testing/TestProtocol.java index 9fd44a1c4..a678ef248 100644 --- a/src/com/android/launcher3/testing/TestProtocol.java +++ b/src/com/android/launcher3/testing/TestProtocol.java @@ -25,6 +25,7 @@ public final class TestProtocol { public static final String STATE_FIELD = "state"; public static final String SWITCHED_TO_STATE_MESSAGE = "TAPL_SWITCHED_TO_STATE"; public static final String SCROLL_FINISHED_MESSAGE = "TAPL_SCROLL_FINISHED"; + public static final String PAUSE_DETECTED_MESSAGE = "TAPL_PAUSE_DETECTED"; public static final String RESPONSE_MESSAGE_POSTFIX = "_RESPONSE"; public static final int NORMAL_STATE_ORDINAL = 0; public static final int SPRING_LOADED_STATE_ORDINAL = 1; diff --git a/tests/tapl/com/android/launcher3/tapl/Background.java b/tests/tapl/com/android/launcher3/tapl/Background.java index e1537e94a..ce952983f 100644 --- a/tests/tapl/com/android/launcher3/tapl/Background.java +++ b/tests/tapl/com/android/launcher3/tapl/Background.java @@ -32,7 +32,6 @@ import com.android.launcher3.testing.TestProtocol; */ public class Background extends LauncherInstrumentation.VisibleContainer { private static final int ZERO_BUTTON_SWIPE_UP_GESTURE_DURATION = 500; - private static final int ZERO_BUTTON_SWIPE_UP_HOLD_DURATION = 400; Background(LauncherInstrumentation launcher) { super(launcher); @@ -72,9 +71,15 @@ public class Background extends LauncherInstrumentation.VisibleContainer { final long downTime = SystemClock.uptimeMillis(); mLauncher.sendPointer(downTime, downTime, MotionEvent.ACTION_DOWN, start); - mLauncher.movePointer( - downTime, downTime, ZERO_BUTTON_SWIPE_UP_GESTURE_DURATION, start, end); - LauncherInstrumentation.sleep(ZERO_BUTTON_SWIPE_UP_HOLD_DURATION); + mLauncher.executeAndWaitForEvent( + () -> mLauncher.movePointer( + downTime, + downTime, + ZERO_BUTTON_SWIPE_UP_GESTURE_DURATION, + start, + end), + event -> TestProtocol.PAUSE_DETECTED_MESSAGE.equals(event.getClassName()), + "Pause wasn't detected"); mLauncher.sendPointer( downTime, SystemClock.uptimeMillis(), MotionEvent.ACTION_UP, end); break; diff --git a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java index 8d69b3783..a442e2b02 100644 --- a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java +++ b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java @@ -364,7 +364,7 @@ public final class LauncherInstrumentation { } } - private Parcelable executeAndWaitForEvent(Runnable command, + Parcelable executeAndWaitForEvent(Runnable command, UiAutomation.AccessibilityEventFilter eventFilter, String message) { try { final AccessibilityEvent event = |