Merge "Simplifying switching to home for some tests" into ub-launcher3-qt-r1-dev
diff --git a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/touchcontrollers/FlingAndHoldTouchController.java b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/touchcontrollers/FlingAndHoldTouchController.java
index 3fe4bcf..f06b8a9 100644
--- a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/touchcontrollers/FlingAndHoldTouchController.java
+++ b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/touchcontrollers/FlingAndHoldTouchController.java
@@ -168,6 +168,21 @@
}
@Override
+ protected void goToTargetState(LauncherState targetState, int logAction) {
+ if (mPeekAnim != null && mPeekAnim.isStarted()) {
+ // Don't jump to the target state until overview is no longer peeking.
+ mPeekAnim.addListener(new AnimatorListenerAdapter() {
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ FlingAndHoldTouchController.super.goToTargetState(targetState, logAction);
+ }
+ });
+ } else {
+ super.goToTargetState(targetState, logAction);
+ }
+ }
+
+ @Override
protected void updateAnimatorBuilderOnReinit(AnimatorSetBuilder builder) {
if (handlingOverviewAnim()) {
// We don't want the state transition to all apps to animate overview,
diff --git a/src/com/android/launcher3/BaseDraggingActivity.java b/src/com/android/launcher3/BaseDraggingActivity.java
index f69b172..5055309 100644
--- a/src/com/android/launcher3/BaseDraggingActivity.java
+++ b/src/com/android/launcher3/BaseDraggingActivity.java
@@ -135,10 +135,6 @@
public boolean startActivitySafely(View v, Intent intent, @Nullable ItemInfo item,
@Nullable String sourceContainer) {
- if (TestProtocol.sDebugTracing) {
- android.util.Log.d(TestProtocol.NO_START_TAG,
- "startActivitySafely 1");
- }
if (mIsSafeModeEnabled && !Utilities.isSystemApp(this, intent)) {
Toast.makeText(this, R.string.safemode_shortcut_error, Toast.LENGTH_SHORT).show();
return false;
@@ -162,10 +158,6 @@
startShortcutIntentSafely(intent, optsBundle, item, sourceContainer);
} else if (user == null || user.equals(Process.myUserHandle())) {
// Could be launching some bookkeeping activity
- if (TestProtocol.sDebugTracing) {
- android.util.Log.d(TestProtocol.NO_START_TAG,
- "startActivitySafely 2");
- }
startActivity(intent, optsBundle);
AppLaunchTracker.INSTANCE.get(this).onStartApp(intent.getComponent(),
Process.myUserHandle(), sourceContainer);
diff --git a/src/com/android/launcher3/BubbleTextView.java b/src/com/android/launcher3/BubbleTextView.java
index 1619e36..22c69f5 100644
--- a/src/com/android/launcher3/BubbleTextView.java
+++ b/src/com/android/launcher3/BubbleTextView.java
@@ -319,9 +319,6 @@
@Override
public boolean onTouchEvent(MotionEvent event) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_START_TAG, "BubbleTextView.onTouchEvent " + event);
- }
// Call the superclass onTouchEvent first, because sometimes it changes the state to
// isPressed() on an ACTION_UP
boolean result = super.onTouchEvent(event);
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index bc3aa7e..9229832 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -1809,11 +1809,6 @@
public boolean startActivitySafely(View v, Intent intent, ItemInfo item,
@Nullable String sourceContainer) {
- if (TestProtocol.sDebugTracing) {
- android.util.Log.d(TestProtocol.NO_START_TAG,
- "startActivitySafely outer");
- }
-
if (!hasBeenResumed()) {
// Workaround an issue where the WM launch animation is clobbered when finishing the
// recents animation into launcher. Defer launching the activity until Launcher is
diff --git a/src/com/android/launcher3/PagedView.java b/src/com/android/launcher3/PagedView.java
index f8e4c9d..bd52ffe 100644
--- a/src/com/android/launcher3/PagedView.java
+++ b/src/com/android/launcher3/PagedView.java
@@ -47,6 +47,7 @@
import android.widget.ScrollView;
import com.android.launcher3.anim.Interpolators;
+import com.android.launcher3.compat.AccessibilityManagerCompat;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.pageindicators.PageIndicator;
import com.android.launcher3.touch.OverScroll;
@@ -367,6 +368,7 @@
*/
protected void onPageEndTransition() {
mWasInOverscroll = false;
+ AccessibilityManagerCompat.sendScrollFinishedEventToTest(getContext());
}
protected int getUnboundedScrollX() {
diff --git a/src/com/android/launcher3/allapps/AllAppsContainerView.java b/src/com/android/launcher3/allapps/AllAppsContainerView.java
index ea9b077..12a4930 100644
--- a/src/com/android/launcher3/allapps/AllAppsContainerView.java
+++ b/src/com/android/launcher3/allapps/AllAppsContainerView.java
@@ -626,9 +626,6 @@
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_START_TAG, "AllAppsContainerView.dispatchTouchEvent " + ev);
- }
final boolean result = super.dispatchTouchEvent(ev);
switch (ev.getActionMasked()) {
case MotionEvent.ACTION_DOWN:
diff --git a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
index 2ad92e1..1369441 100644
--- a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
+++ b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
@@ -301,11 +301,6 @@
}
private void refreshRecyclerView() {
- if (TestProtocol.sDebugTracing) {
- android.util.Log.d(TestProtocol.NO_START_TAG,
- "refreshRecyclerView @ " + android.util.Log.getStackTraceString(
- new Throwable()));
- }
if (mAdapter != null) {
mAdapter.notifyDataSetChanged();
}
diff --git a/src/com/android/launcher3/testing/TestProtocol.java b/src/com/android/launcher3/testing/TestProtocol.java
index 011ff86..e28eba8 100644
--- a/src/com/android/launcher3/testing/TestProtocol.java
+++ b/src/com/android/launcher3/testing/TestProtocol.java
@@ -75,7 +75,6 @@
public static final String REQUEST_ENABLE_DEBUG_TRACING = "enable-debug-tracing";
public static final String REQUEST_DISABLE_DEBUG_TRACING = "disable-debug-tracing";
public static final String NO_DRAG_TAG = "b/133009122";
- public static final String NO_START_TAG = "b/132900132";
public static final String NO_START_TASK_TAG = "b/133765434";
public static final String NO_OVERVIEW_EVENT_TAG = "b/134532571";
}
diff --git a/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java b/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java
index 7252410..ae69f3b 100644
--- a/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java
+++ b/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java
@@ -31,7 +31,6 @@
import android.animation.AnimatorSet;
import android.animation.ValueAnimator;
import android.os.SystemClock;
-import android.util.Log;
import android.view.HapticFeedbackConstants;
import android.view.MotionEvent;
@@ -43,7 +42,6 @@
import com.android.launcher3.anim.AnimationSuccessListener;
import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.anim.AnimatorSetBuilder;
-import com.android.launcher3.testing.TestProtocol;
import com.android.launcher3.userevent.nano.LauncherLogProto;
import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Direction;
import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Touch;
@@ -513,13 +511,17 @@
shouldGoToTargetState = !reachedTarget;
}
if (shouldGoToTargetState) {
- if (targetState != mStartState) {
- logReachedState(logAction, targetState);
- }
- mLauncher.getStateManager().goToState(targetState, false /* animated */);
+ goToTargetState(targetState, logAction);
}
}
+ protected void goToTargetState(LauncherState targetState, int logAction) {
+ if (targetState != mStartState) {
+ logReachedState(logAction, targetState);
+ }
+ mLauncher.getStateManager().goToState(targetState, false /* animated */);
+ }
+
private void logReachedState(int logAction, LauncherState targetState) {
// Transition complete. log the action
mLauncher.getUserEventDispatcher().logStateChangeAction(logAction,
diff --git a/src/com/android/launcher3/touch/ItemClickHandler.java b/src/com/android/launcher3/touch/ItemClickHandler.java
index 85f763d..2895a89 100644
--- a/src/com/android/launcher3/touch/ItemClickHandler.java
+++ b/src/com/android/launcher3/touch/ItemClickHandler.java
@@ -68,28 +68,12 @@
}
private static void onClick(View v, String sourceContainer) {
- if (TestProtocol.sDebugTracing) {
- android.util.Log.d(TestProtocol.NO_START_TAG,
- "onClick 1");
- }
// Make sure that rogue clicks don't get through while allapps is launching, or after the
// view has detached (it's possible for this to happen if the view is removed mid touch).
- if (v.getWindowToken() == null) {
- if (TestProtocol.sDebugTracing) {
- android.util.Log.d(TestProtocol.NO_START_TAG,
- "onClick 2");
- }
- return;
- }
+ if (v.getWindowToken() == null) return;
Launcher launcher = Launcher.getLauncher(v.getContext());
- if (!launcher.getWorkspace().isFinishedSwitchingState()) {
- if (TestProtocol.sDebugTracing) {
- android.util.Log.d(TestProtocol.NO_START_TAG,
- "onClick 3");
- }
- return;
- }
+ if (!launcher.getWorkspace().isFinishedSwitchingState()) return;
Object tag = v.getTag();
if (tag instanceof WorkspaceItemInfo) {
@@ -99,10 +83,6 @@
onClickFolderIcon(v);
}
} else if (tag instanceof AppInfo) {
- if (TestProtocol.sDebugTracing) {
- android.util.Log.d(TestProtocol.NO_START_TAG,
- "onClick 4");
- }
startAppShortcutOrInfoActivity(v, (AppInfo) tag, launcher,
sourceContainer == null ? CONTAINER_ALL_APPS: sourceContainer);
} else if (tag instanceof LauncherAppWidgetInfo) {
@@ -234,10 +214,6 @@
private static void startAppShortcutOrInfoActivity(View v, ItemInfo item, Launcher launcher,
@Nullable String sourceContainer) {
- if (TestProtocol.sDebugTracing) {
- android.util.Log.d(TestProtocol.NO_START_TAG,
- "startAppShortcutOrInfoActivity");
- }
Intent intent;
if (item instanceof PromiseAppInfo) {
PromiseAppInfo promiseAppInfo = (PromiseAppInfo) item;
diff --git a/src/com/android/launcher3/views/BaseDragLayer.java b/src/com/android/launcher3/views/BaseDragLayer.java
index 15f2724..8bf33bf 100644
--- a/src/com/android/launcher3/views/BaseDragLayer.java
+++ b/src/com/android/launcher3/views/BaseDragLayer.java
@@ -256,9 +256,6 @@
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_START_TAG, "BaseDragLayer.dispatchTouchEvent " + ev);
- }
switch (ev.getAction()) {
case ACTION_DOWN: {
float x = ev.getX();
diff --git a/tests/tapl/com/android/launcher3/tapl/BaseOverview.java b/tests/tapl/com/android/launcher3/tapl/BaseOverview.java
index ace49e9..ae93867 100644
--- a/tests/tapl/com/android/launcher3/tapl/BaseOverview.java
+++ b/tests/tapl/com/android/launcher3/tapl/BaseOverview.java
@@ -16,6 +16,8 @@
package com.android.launcher3.tapl;
+import android.graphics.Rect;
+
import androidx.annotation.NonNull;
import androidx.test.uiautomator.BySelector;
import androidx.test.uiautomator.Direction;
@@ -49,9 +51,8 @@
mLauncher.addContextLayer("want to fling forward in overview")) {
LauncherInstrumentation.log("Overview.flingForward before fling");
final UiObject2 overview = verifyActiveContainer();
- overview.setGestureMargins(mLauncher.getEdgeSensitivityWidth(), 0, 0, 0);
- overview.fling(Direction.LEFT, (int) (FLING_SPEED * mLauncher.getDisplayDensity()));
- mLauncher.waitForIdle();
+ mLauncher.scroll(overview, Direction.LEFT, 1,
+ new Rect(mLauncher.getEdgeSensitivityWidth(), 0, 0, 0), 20);
verifyActiveContainer();
}
}
@@ -86,9 +87,8 @@
mLauncher.addContextLayer("want to fling backward in overview")) {
LauncherInstrumentation.log("Overview.flingBackward before fling");
final UiObject2 overview = verifyActiveContainer();
- overview.setGestureMargins(0, 0, mLauncher.getEdgeSensitivityWidth(), 0);
- overview.fling(Direction.RIGHT, (int) (FLING_SPEED * mLauncher.getDisplayDensity()));
- mLauncher.waitForIdle();
+ mLauncher.scroll(overview, Direction.RIGHT, 1,
+ new Rect(0, 0, mLauncher.getEdgeSensitivityWidth(), 0), 20);
verifyActiveContainer();
}
}
diff --git a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java
index 2b0a794..5a6c898 100644
--- a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java
+++ b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java
@@ -834,6 +834,22 @@
endY = (int) (vertCenter - halfGestureHeight);
}
break;
+ case LEFT: {
+ startY = endY = rect.centerY();
+ final int horizCenter = rect.centerX();
+ final float halfGestureWidth = rect.width() * percent / 2.0f;
+ startX = (int) (horizCenter - halfGestureWidth);
+ endX = (int) (horizCenter + halfGestureWidth);
+ }
+ break;
+ case RIGHT: {
+ startY = endY = rect.centerY();
+ final int horizCenter = rect.centerX();
+ final float halfGestureWidth = rect.width() * percent / 2.0f;
+ startX = (int) (horizCenter + halfGestureWidth);
+ endX = (int) (horizCenter - halfGestureWidth);
+ }
+ break;
default:
fail("Unsupported direction");
return;