Loading libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/SplitScreenUtils.kt +12 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import com.android.server.wm.flicker.helpers.NonResizeableAppHelper import com.android.server.wm.flicker.helpers.NotificationAppHelper import com.android.server.wm.flicker.helpers.SimpleAppHelper import com.android.server.wm.flicker.testapp.ActivityOptions import com.android.server.wm.flicker.testapp.ActivityOptions.SplitScreen.Primary import com.android.wm.shell.flicker.LAUNCHER_UI_PACKAGE_NAME import com.android.wm.shell.flicker.SYSTEM_UI_PACKAGE_NAME import org.junit.Assert.assertNotNull Loading Loading @@ -112,6 +113,17 @@ internal object SplitScreenUtils { waitForSplitComplete(wmHelper, primaryApp, secondaryApp) } fun enterSplitViaIntent( wmHelper: WindowManagerStateHelper, primaryApp: StandardAppHelper, secondaryApp: StandardAppHelper ) { val stringExtras = mapOf(Primary.EXTRA_LAUNCH_ADJACENT to "true") primaryApp.launchViaIntent(wmHelper, null, null, stringExtras) waitForSplitComplete(wmHelper, primaryApp, secondaryApp) } fun splitFromOverview(tapl: LauncherInstrumentation, device: UiDevice) { // Note: The initial split position in landscape is different between tablet and phone. // In landscape, tablet will let the first app split to right side, and phone will Loading libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/UnlockKeyguardToSplitScreen.kt +0 −1 Original line number Diff line number Diff line Loading @@ -52,7 +52,6 @@ class UnlockKeyguardToSplitScreen(override val flicker: LegacyFlickerTest) : /** {@inheritDoc} */ override val transition: FlickerBuilder.() -> Unit get() = { defaultSetup(this) defaultTeardown(this) thisTransition(this) } Loading libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/benchmark/UnlockKeyguardToSplitScreenBenchmark.kt +1 −1 Original line number Diff line number Diff line Loading @@ -37,7 +37,7 @@ open class UnlockKeyguardToSplitScreenBenchmark(override val flicker: LegacyFlic SplitScreenBase(flicker) { protected val thisTransition: FlickerBuilder.() -> Unit get() = { setup { SplitScreenUtils.enterSplit(wmHelper, tapl, device, primaryApp, secondaryApp) } setup { SplitScreenUtils.enterSplitViaIntent(wmHelper, primaryApp, secondaryApp) } transitions { device.sleep() wmHelper.StateSyncBuilder().withAppTransitionIdle().waitForAndVerify() Loading tests/FlickerTests/test-apps/flickerapp/src/com/android/server/wm/flicker/testapp/ActivityOptions.java +2 −0 Original line number Diff line number Diff line Loading @@ -186,6 +186,8 @@ public class ActivityOptions { public static final String LABEL = "SplitScreenPrimaryActivity"; public static final ComponentName COMPONENT = new ComponentName(FLICKER_APP_PACKAGE, FLICKER_APP_PACKAGE + ".SplitScreenActivity"); public static final String EXTRA_LAUNCH_ADJACENT = "launch_adjacent"; } public static class Secondary { Loading tests/FlickerTests/test-apps/flickerapp/src/com/android/server/wm/flicker/testapp/SplitScreenActivity.java +18 −0 Original line number Diff line number Diff line Loading @@ -16,9 +16,14 @@ package com.android.server.wm.flicker.testapp; import static com.android.server.wm.flicker.testapp.ActivityOptions.SplitScreen.Primary.EXTRA_LAUNCH_ADJACENT; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import androidx.annotation.Nullable; public class SplitScreenActivity extends Activity { @Override Loading @@ -26,4 +31,17 @@ public class SplitScreenActivity extends Activity { super.onCreate(icicle); setContentView(R.layout.activity_splitscreen); } @Override protected void onPostCreate(@Nullable Bundle savedInstanceState) { super.onPostCreate(savedInstanceState); final boolean startSecondaryActivity = getIntent().hasExtra(EXTRA_LAUNCH_ADJACENT); if (startSecondaryActivity) { final Intent intent = new Intent(this, SplitScreenSecondaryActivity.class); intent.addCategory(Intent.CATEGORY_LAUNCHER); intent.addFlags(Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT | Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_MULTIPLE_TASK); startActivity(intent); } } } Loading
libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/SplitScreenUtils.kt +12 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import com.android.server.wm.flicker.helpers.NonResizeableAppHelper import com.android.server.wm.flicker.helpers.NotificationAppHelper import com.android.server.wm.flicker.helpers.SimpleAppHelper import com.android.server.wm.flicker.testapp.ActivityOptions import com.android.server.wm.flicker.testapp.ActivityOptions.SplitScreen.Primary import com.android.wm.shell.flicker.LAUNCHER_UI_PACKAGE_NAME import com.android.wm.shell.flicker.SYSTEM_UI_PACKAGE_NAME import org.junit.Assert.assertNotNull Loading Loading @@ -112,6 +113,17 @@ internal object SplitScreenUtils { waitForSplitComplete(wmHelper, primaryApp, secondaryApp) } fun enterSplitViaIntent( wmHelper: WindowManagerStateHelper, primaryApp: StandardAppHelper, secondaryApp: StandardAppHelper ) { val stringExtras = mapOf(Primary.EXTRA_LAUNCH_ADJACENT to "true") primaryApp.launchViaIntent(wmHelper, null, null, stringExtras) waitForSplitComplete(wmHelper, primaryApp, secondaryApp) } fun splitFromOverview(tapl: LauncherInstrumentation, device: UiDevice) { // Note: The initial split position in landscape is different between tablet and phone. // In landscape, tablet will let the first app split to right side, and phone will Loading
libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/UnlockKeyguardToSplitScreen.kt +0 −1 Original line number Diff line number Diff line Loading @@ -52,7 +52,6 @@ class UnlockKeyguardToSplitScreen(override val flicker: LegacyFlickerTest) : /** {@inheritDoc} */ override val transition: FlickerBuilder.() -> Unit get() = { defaultSetup(this) defaultTeardown(this) thisTransition(this) } Loading
libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/benchmark/UnlockKeyguardToSplitScreenBenchmark.kt +1 −1 Original line number Diff line number Diff line Loading @@ -37,7 +37,7 @@ open class UnlockKeyguardToSplitScreenBenchmark(override val flicker: LegacyFlic SplitScreenBase(flicker) { protected val thisTransition: FlickerBuilder.() -> Unit get() = { setup { SplitScreenUtils.enterSplit(wmHelper, tapl, device, primaryApp, secondaryApp) } setup { SplitScreenUtils.enterSplitViaIntent(wmHelper, primaryApp, secondaryApp) } transitions { device.sleep() wmHelper.StateSyncBuilder().withAppTransitionIdle().waitForAndVerify() Loading
tests/FlickerTests/test-apps/flickerapp/src/com/android/server/wm/flicker/testapp/ActivityOptions.java +2 −0 Original line number Diff line number Diff line Loading @@ -186,6 +186,8 @@ public class ActivityOptions { public static final String LABEL = "SplitScreenPrimaryActivity"; public static final ComponentName COMPONENT = new ComponentName(FLICKER_APP_PACKAGE, FLICKER_APP_PACKAGE + ".SplitScreenActivity"); public static final String EXTRA_LAUNCH_ADJACENT = "launch_adjacent"; } public static class Secondary { Loading
tests/FlickerTests/test-apps/flickerapp/src/com/android/server/wm/flicker/testapp/SplitScreenActivity.java +18 −0 Original line number Diff line number Diff line Loading @@ -16,9 +16,14 @@ package com.android.server.wm.flicker.testapp; import static com.android.server.wm.flicker.testapp.ActivityOptions.SplitScreen.Primary.EXTRA_LAUNCH_ADJACENT; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import androidx.annotation.Nullable; public class SplitScreenActivity extends Activity { @Override Loading @@ -26,4 +31,17 @@ public class SplitScreenActivity extends Activity { super.onCreate(icicle); setContentView(R.layout.activity_splitscreen); } @Override protected void onPostCreate(@Nullable Bundle savedInstanceState) { super.onPostCreate(savedInstanceState); final boolean startSecondaryActivity = getIntent().hasExtra(EXTRA_LAUNCH_ADJACENT); if (startSecondaryActivity) { final Intent intent = new Intent(this, SplitScreenSecondaryActivity.class); intent.addCategory(Intent.CATEGORY_LAUNCHER); intent.addFlags(Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT | Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_MULTIPLE_TASK); startActivity(intent); } } }