diff --git a/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java b/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java index 7d193aa7ba..2759816fa5 100644 --- a/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java +++ b/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java @@ -1567,7 +1567,8 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener private boolean isFreeformAnimation(RemoteAnimationTarget[] appTargets) { return DesktopModeStatus.canEnterDesktopMode(mLauncher.getApplicationContext()) - && DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_EXIT_TRANSITIONS.isTrue() + && (DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_EXIT_TRANSITIONS.isTrue() + || DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_EXIT_TRANSITIONS_BUGFIX.isTrue()) && Arrays.stream(appTargets) .anyMatch(app -> app.taskInfo != null && app.taskInfo.isFreeform()); } diff --git a/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManager.kt b/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManager.kt index e32bcd1fdc..645bef6b97 100644 --- a/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManager.kt +++ b/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManager.kt @@ -67,7 +67,8 @@ class DesktopAppLaunchTransitionManager( private fun shouldRegisterTransitions(): Boolean = DesktopModeStatus.canEnterDesktopMode(context) && - DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS.isTrue + (DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS.isTrue || + DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX.isTrue) companion object { private fun buildAppLaunchFilter(): TransitionFilter { diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java index 70c61ff88c..0f639f97ff 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java @@ -869,7 +869,8 @@ public class TaskbarActivityContext extends BaseTaskbarContext { } private ActivityOptionsWrapper getActivityLaunchDesktopOptions(ItemInfo info) { - if (!DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS.isTrue()) { + if (!DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS.isTrue() + && !DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX.isTrue()) { return null; } if (!areDesktopTasksVisible()) { @@ -1437,7 +1438,9 @@ public class TaskbarActivityContext extends BaseTaskbarContext { BubbleTextView.RunningAppState runningAppState = mControllers.taskbarRecentAppsController.getRunningAppState(taskId); return runningAppState == BubbleTextView.RunningAppState.MINIMIZED - && DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS.isTrue(); + && (DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS.isTrue() + || DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS_BUGFIX.isTrue() + ); } private RemoteTransition createUnminimizeRemoteTransition() { diff --git a/quickstep/tests/src/com/android/quickstep/desktop/DesktopAppLaunchTransitionManagerTest.kt b/quickstep/tests/src/com/android/quickstep/desktop/DesktopAppLaunchTransitionManagerTest.kt index 26189df281..ae96c09c37 100644 --- a/quickstep/tests/src/com/android/quickstep/desktop/DesktopAppLaunchTransitionManagerTest.kt +++ b/quickstep/tests/src/com/android/quickstep/desktop/DesktopAppLaunchTransitionManagerTest.kt @@ -30,6 +30,7 @@ import androidx.test.filters.SmallTest import com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession import com.android.quickstep.SystemUiProxy import com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS +import com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX import com.android.wm.shell.shared.desktopmode.DesktopModeStatus import com.google.common.truth.Truth.assertThat import org.junit.After @@ -74,7 +75,10 @@ class DesktopAppLaunchTransitionManagerTest { } @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS) + @EnableFlags( + FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS, + FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX, + ) fun registerTransitions_appLaunchFlagEnabled_registersTransition() { transitionManager.registerTransitions() @@ -82,7 +86,10 @@ class DesktopAppLaunchTransitionManagerTest { } @Test - @DisableFlags(FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS) + @DisableFlags( + FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS, + FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX, + ) fun registerTransitions_appLaunchFlagDisabled_doesntRegisterTransition() { transitionManager.registerTransitions() @@ -90,7 +97,10 @@ class DesktopAppLaunchTransitionManagerTest { } @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS) + @EnableFlags( + FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS, + FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX, + ) fun registerTransitions_usesCorrectFilter() { transitionManager.registerTransitions() val filterArgumentCaptor = argumentCaptor()