Fix Taskbar to Hotseat Animation for Non-Predective back apps

- Refactored Taskbar animation duration to under one method and added logic to sync animation duration according to enableScalingRevealHomeAnimation.
- Change the interpolator for TaskbarLauncherStateController based on enableScalingRevealHomeAnimation.

Test: Presubmit, Manual
Bug: 369378541
Flag: EXEMPT Bug Fix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:0a65c5bd72d755856148faeb070a5d2ad2c79cb0)
Merged-In: I942829b475f91e9102801b758eb7ee0d27eee912
Change-Id: I942829b475f91e9102801b758eb7ee0d27eee912
This commit is contained in:
Jagrut Desai
2024-10-07 15:16:43 -07:00
committed by Android Build Coastguard Worker
parent 98a8922e41
commit c4f9510874
4 changed files with 25 additions and 8 deletions

View File

@@ -17,6 +17,8 @@ package com.android.launcher3.taskbar;
import static android.window.flags.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY;
import static com.android.launcher3.QuickstepTransitionManager.TASKBAR_TO_APP_DURATION;
import static com.android.launcher3.QuickstepTransitionManager.getTaskbarToHomeDuration;
import static com.android.launcher3.QuickstepTransitionManager.TRANSIENT_TASKBAR_TRANSITION_DURATION;
import static com.android.launcher3.statemanager.BaseState.FLAG_NON_INTERACTIVE;
import static com.android.launcher3.taskbar.TaskbarEduTooltipControllerKt.TOOLTIP_STEP_FEATURES;
@@ -32,7 +34,6 @@ import androidx.annotation.Nullable;
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.Flags;
import com.android.launcher3.LauncherState;
import com.android.launcher3.QuickstepTransitionManager;
import com.android.launcher3.Utilities;
import com.android.launcher3.anim.AnimatedFloat;
import com.android.launcher3.logging.InstanceId;
@@ -204,11 +205,17 @@ public class LauncherTaskbarUIController extends TaskbarUIController {
isVisible,
fromInitOrDestroy,
/* startAnimation= */ true,
DisplayController.isTransientTaskbar(mLauncher)
? TRANSIENT_TASKBAR_TRANSITION_DURATION
: (!isVisible
? QuickstepTransitionManager.TASKBAR_TO_APP_DURATION
: QuickstepTransitionManager.getTaskbarToHomeDuration()));
getTaskbarAnimationDuration(isVisible));
}
private int getTaskbarAnimationDuration(boolean isVisible) {
if (isVisible && !mLauncher.getPredictiveBackToHomeInProgress()) {
return getTaskbarToHomeDuration();
} else {
return DisplayController.isTransientTaskbar(mLauncher)
? TRANSIENT_TASKBAR_TRANSITION_DURATION
: TASKBAR_TO_APP_DURATION;
}
}
@Nullable