diff --git a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java index af3617529a..05ccf2e620 100644 --- a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java +++ b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java @@ -926,6 +926,16 @@ public final class LauncherInstrumentation { } } + void waitForObjectEnabled(UiObject2 object, String waitReason) { + try { + assertTrue("Timed out waiting for object to be enabled for " + waitReason + " " + + object.getResourceName(), + object.wait(Until.enabled(true), WAIT_TIME_MS)); + } catch (StaleObjectException e) { + fail("The object disappeared from screen"); + } + } + @NonNull UiObject2 waitForObjectInContainer(UiObject2 container, BySelector selector) { try { @@ -1072,6 +1082,7 @@ public final class LauncherInstrumentation { } void clickLauncherObject(UiObject2 object) { + waitForObjectEnabled(object, "clickLauncherObject"); expectEvent(TestProtocol.SEQUENCE_MAIN, LauncherInstrumentation.EVENT_TOUCH_DOWN); expectEvent(TestProtocol.SEQUENCE_MAIN, LauncherInstrumentation.EVENT_TOUCH_UP); if (!isLauncher3() && getNavigationModel() != NavigationModel.THREE_BUTTON) { diff --git a/tests/tapl/com/android/launcher3/tapl/OverviewActions.java b/tests/tapl/com/android/launcher3/tapl/OverviewActions.java index e3e0f4209d..950c052636 100644 --- a/tests/tapl/com/android/launcher3/tapl/OverviewActions.java +++ b/tests/tapl/com/android/launcher3/tapl/OverviewActions.java @@ -64,6 +64,7 @@ public class OverviewActions { "want to click screenshot button and exit screenshot ui")) { UiObject2 screenshot = mLauncher.waitForObjectInContainer(mOverviewActions, "action_screenshot"); + mLauncher.clickLauncherObject(screenshot); try (LauncherInstrumentation.Closable c1 = mLauncher.addContextLayer( "clicked screenshot button")) {