From cd791c5c9dc4690801e2dd334632093bfb22a155 Mon Sep 17 00:00:00 2001 From: Alex Chau Date: Thu, 15 Jul 2021 16:44:20 +0100 Subject: [PATCH] Wait for taskbar to become visible after closing launcher in tests - Taskbar takes some time to appear after closing launcher and launching test app Bug: 193653850 Test: StartLauncherViaGestureTests Change-Id: I714e35ee855660ac28bb214386f48ddbea0e834c --- .../quickstep/TouchInteractionService.java | 14 ++++++- .../StartLauncherViaGestureTests.java | 40 +++++++++++++++++-- .../tapl/LauncherInstrumentation.java | 4 -- 3 files changed, 50 insertions(+), 8 deletions(-) diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java index 20d7eb13b4..7bb0b94119 100644 --- a/quickstep/src/com/android/quickstep/TouchInteractionService.java +++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java @@ -67,6 +67,7 @@ import androidx.annotation.BinderThread; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.UiThread; +import androidx.annotation.VisibleForTesting; import androidx.annotation.WorkerThread; import com.android.launcher3.BaseDraggingActivity; @@ -301,17 +302,26 @@ public class TouchInteractionService extends Service implements PluginListener { + TaskbarManager taskbarManager = + TouchInteractionService.getTaskbarManagerForTesting(); + if (taskbarManager == null) { + return false; + } + + TaskbarActivityContext taskbarActivityContext = + taskbarManager.getCurrentActivityContext(); + if (taskbarActivityContext == null) { + return false; + } + + TaskbarDragLayer taskbarDragLayer = taskbarActivityContext.getDragLayer(); + return TestViewHelpers.findChildView(taskbarDragLayer, + view -> view instanceof TaskbarView && view.isVisibleToUser()) != null; + }, DEFAULT_UI_TIMEOUT); + } } diff --git a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java index 1e7f8a5d1c..cce4ef14d1 100644 --- a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java +++ b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java @@ -746,7 +746,6 @@ public final class LauncherInstrumentation { dumpViewHierarchy(); action = "swiping up to home"; - final boolean launcherIsVisible = isLauncherVisible(); swipeToState( displaySize.x / 2, displaySize.y - 1, displaySize.x / 2, 0, @@ -754,9 +753,6 @@ public final class LauncherInstrumentation { launcherWasVisible ? GestureScope.INSIDE_TO_OUTSIDE : GestureScope.OUTSIDE_WITH_PILFER); - // b/193653850: launcherWasVisible is a flaky indicator. - log("launcherWasVisible: " + launcherWasVisible + ", launcherIsVisible: " - + launcherIsVisible); } } else { log("Hierarchy before clicking home:");