diff options
| author | 2023-03-30 13:06:06 +0000 | |
|---|---|---|
| committer | 2023-03-30 13:06:06 +0000 | |
| commit | 88dd1d6c7332dcaada3d1748392979e3cf375328 (patch) | |
| tree | accd0910a84550d1e9ebf61e2720550145beb51c | |
| parent | ecb1be12b906d6bec742d1d44d8d36b159edd0db (diff) | |
| parent | 84797f945ce2efcdbefb1799aed3f79de6b8ba00 (diff) | |
Merge "Fix DragDividerToResize flicker tests" into udc-dev
5 files changed, 40 insertions, 43 deletions
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java index ebdaaa9aa4a9..32abd7312109 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java @@ -212,7 +212,7 @@ class SplitScreenTransitions { } } - void applyResizeTransition(@NonNull IBinder transition, @NonNull TransitionInfo info, + void playResizeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull Transitions.TransitionFinishCallback finishCallback, diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java index 33cbdac67061..c61658774459 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java @@ -2376,7 +2376,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, return true; } } else if (mSplitTransitions.isPendingResize(transition)) { - mSplitTransitions.applyResizeTransition(transition, info, startTransaction, + mSplitTransitions.playResizeAnimation(transition, info, startTransaction, finishTransaction, finishCallback, mMainStage.mRootTaskInfo.token, mSideStage.mRootTaskInfo.token, mMainStage.getSplitDecorManager(), mSideStage.getSplitDecorManager()); diff --git a/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/CommonAssertions.kt b/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/CommonAssertions.kt index ed93045ec462..91846fafd1db 100644 --- a/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/CommonAssertions.kt +++ b/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/CommonAssertions.kt @@ -217,28 +217,37 @@ fun FlickerTest.splitAppLayerBoundsChanges( ) { assertLayers { if (landscapePosLeft) { - this.splitAppLayerBoundsSnapToDivider( + splitAppLayerBoundsSnapToDivider( + component, + landscapePosLeft, + portraitPosTop, + scenario.endRotation + ) + .then() + .isInvisible(component) + .then() + .splitAppLayerBoundsSnapToDivider( component, landscapePosLeft, portraitPosTop, scenario.endRotation ) } else { - this.splitAppLayerBoundsSnapToDivider( - component, - landscapePosLeft, - portraitPosTop, - scenario.endRotation - ) - .then() - .isInvisible(component) - .then() - .splitAppLayerBoundsSnapToDivider( - component, - landscapePosLeft, - portraitPosTop, - scenario.endRotation - ) + splitAppLayerBoundsSnapToDivider( + component, + landscapePosLeft, + portraitPosTop, + scenario.endRotation + ) + .then() + .isInvisible(component) + .then() + .splitAppLayerBoundsSnapToDivider( + component, + landscapePosLeft, + portraitPosTop, + scenario.endRotation + ) } } } diff --git a/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/DragDividerToResize.kt b/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/DragDividerToResize.kt index 7db5ecc484ad..17f174b2195f 100644 --- a/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/DragDividerToResize.kt +++ b/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/DragDividerToResize.kt @@ -16,7 +16,6 @@ package com.android.wm.shell.flicker.splitscreen -import android.platform.test.annotations.FlakyTest import android.platform.test.annotations.IwTest import android.platform.test.annotations.Presubmit import android.tools.device.flicker.isShellTransitionsEnabled @@ -86,16 +85,14 @@ class DragDividerToResize(flicker: FlickerTest) : SplitScreenBase(flicker) { @Presubmit @Test - fun primaryAppLayerKeepVisible() { - Assume.assumeFalse(isShellTransitionsEnabled) - flicker.layerKeepVisible(primaryApp) - } - - @FlakyTest(bugId = 263213649) - @Test - fun primaryAppLayerKeepVisible_ShellTransit() { - Assume.assumeTrue(isShellTransitionsEnabled) - flicker.layerKeepVisible(primaryApp) + fun primaryAppLayerVisibilityChanges() { + flicker.assertLayers { + this.isVisible(secondaryApp) + .then() + .isInvisible(secondaryApp) + .then() + .isVisible(secondaryApp) + } } @Presubmit @@ -110,7 +107,9 @@ class DragDividerToResize(flicker: FlickerTest) : SplitScreenBase(flicker) { } } - @Presubmit @Test fun primaryAppWindowKeepVisible() = flicker.appWindowKeepVisible(primaryApp) + @Presubmit + @Test + fun primaryAppWindowKeepVisible() = flicker.appWindowKeepVisible(primaryApp) @Presubmit @Test @@ -127,17 +126,6 @@ class DragDividerToResize(flicker: FlickerTest) : SplitScreenBase(flicker) { ) } - @FlakyTest(bugId = 263213649) - @Test - fun primaryAppBoundsChanges_ShellTransit() { - Assume.assumeTrue(isShellTransitionsEnabled) - flicker.splitAppLayerBoundsChanges( - primaryApp, - landscapePosLeft = true, - portraitPosTop = false - ) - } - @Presubmit @Test fun secondaryAppBoundsChanges() = @@ -148,7 +136,7 @@ class DragDividerToResize(flicker: FlickerTest) : SplitScreenBase(flicker) { ) /** {@inheritDoc} */ - @FlakyTest(bugId = 263213649) + @Presubmit @Test override fun entireScreenCovered() = super.entireScreenCovered() diff --git a/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/SplitScreenUtils.kt b/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/SplitScreenUtils.kt index 7901f7502e2c..62936e0f5ca8 100644 --- a/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/SplitScreenUtils.kt +++ b/libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/splitscreen/SplitScreenUtils.kt @@ -293,7 +293,7 @@ internal object SplitScreenUtils { wmHelper.currentState.layerState.displays.firstOrNull { !it.isVirtual }?.layerStackSpace ?: error("Display not found") val dividerBar = device.wait(Until.findObject(dividerBarSelector), TIMEOUT_MS) - dividerBar.drag(Point(displayBounds.width * 1 / 3, displayBounds.height * 2 / 3)) + dividerBar.drag(Point(displayBounds.width * 1 / 3, displayBounds.height * 2 / 3), 2000) wmHelper .StateSyncBuilder() |