From 82efdccc6e0883465c751f4648aa00d1dd2b2ccb Mon Sep 17 00:00:00 2001 From: Sunny Goyal Date: Mon, 18 Nov 2024 13:42:24 -0800 Subject: [PATCH] Wait for animations before injecting input event While animaiton is running, some views might not be visible causing them to miss input events Bug: 378167329 Bug: 378167718 Test: Presubmit Flag: EXEMPT test fix Change-Id: I8608c415e524fc5186833eac840ec18c6f244eb0 --- .../com/android/launcher3/util/BaseLauncherActivityTest.kt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tests/src/com/android/launcher3/util/BaseLauncherActivityTest.kt b/tests/src/com/android/launcher3/util/BaseLauncherActivityTest.kt index 644659296d..61fa7d57ea 100644 --- a/tests/src/com/android/launcher3/util/BaseLauncherActivityTest.kt +++ b/tests/src/com/android/launcher3/util/BaseLauncherActivityTest.kt @@ -124,9 +124,10 @@ open class BaseLauncherActivityTest { @JvmOverloads protected fun injectKeyEvent(keyCode: Int, actionDown: Boolean, metaState: Int = 0) { + uiDevice.waitForIdle() val eventTime = SystemClock.uptimeMillis() val event = - KeyEvent.obtain( + KeyEvent( eventTime, eventTime, if (actionDown) KeyEvent.ACTION_DOWN else MotionEvent.ACTION_UP, @@ -137,10 +138,8 @@ open class BaseLauncherActivityTest { /* scancode= */ 0, /* flags= */ 0, InputDevice.SOURCE_KEYBOARD, - /* characters =*/ null, ) executeOnLauncher { it.dispatchKeyEvent(event) } - event.recycle() } @JvmOverloads