From febd61fb3f421a02b68d937888771bf2c75d3f50 Mon Sep 17 00:00:00 2001 From: Vinit Nayak Date: Wed, 1 Nov 2023 16:14:30 -0700 Subject: [PATCH] Prevent taskbar animation for contextual split from home * Ideal animation TODO, this is to help unblock for now. Flag: Flag: ACONFIG com.android.wm.shell.enable_split_contextual DEVELOPMENT Test: With flag on and off, from home, overview, all apps Bug: 296351434 Change-Id: Ida743a881519796ed8ce3e5966aa708c84521c51 --- .../launcher3/taskbar/LauncherTaskbarUIController.java | 10 +++++++++- .../launcher3/uioverrides/QuickstepLauncher.java | 4 ++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java b/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java index 20e977b336..e1b6494bd7 100644 --- a/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java +++ b/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java @@ -16,6 +16,7 @@ package com.android.launcher3.taskbar; import static com.android.launcher3.QuickstepTransitionManager.TRANSIENT_TASKBAR_TRANSITION_DURATION; +import static com.android.launcher3.config.FeatureFlags.enableSplitContextually; import static com.android.launcher3.statemanager.BaseState.FLAG_NON_INTERACTIVE; import static com.android.launcher3.taskbar.TaskbarEduTooltipControllerKt.TOOLTIP_STEP_FEATURES; import static com.android.launcher3.taskbar.TaskbarLauncherStateController.FLAG_VISIBLE; @@ -214,7 +215,14 @@ public class LauncherTaskbarUIController extends TaskbarUIController { } mTaskbarLauncherStateController.updateStateForFlag(FLAG_VISIBLE, isVisible); - return mTaskbarLauncherStateController.applyState(fromInit ? 0 : duration, startAnimation); + // TODO(b/308851855): Skip animation for launching split from home, will refine later + boolean skipAnimForSplit = enableSplitContextually() && + mLauncher.areBothSplitAppsConfirmed() && + mLauncher.getStateManager().getState() == LauncherState.NORMAL; + if (skipAnimForSplit || fromInit) { + duration = 0; + } + return mTaskbarLauncherStateController.applyState(duration, startAnimation); } @Override diff --git a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java index 2e8e613595..eb951f6230 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java +++ b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java @@ -729,6 +729,10 @@ public class QuickstepLauncher extends Launcher { return mSplitSelectStateController.isSplitSelectActive(); } + public boolean areBothSplitAppsConfirmed() { + return mSplitSelectStateController.isBothSplitAppsConfirmed(); + } + @Override public void onStateTransitionCompletedAfterSwipeToHome(LauncherState finalState) { if (mTaskbarUIController != null) {