Merge "Fix pinned Taksbar in Overview Modal Launcher state." into main

This commit is contained in:
Jagrut Desai
2025-04-17 16:54:14 -07:00
committed by Android (Google) Code Review
@@ -521,11 +521,22 @@ public class TaskbarLauncherStateController {
stashController.updateStateForFlag(FLAG_IN_OVERVIEW,
mLauncherState == LauncherState.OVERVIEW);
// Update taskbar stash flag here since we are skipping the playStateTransitionAnim below
if (isPinnedTaskbar) {
stashController.updateStateForFlag(FLAG_IN_STASHED_LAUNCHER_STATE,
mLauncherState.isTaskbarStashed(mLauncher));
}
AnimatorSet animatorSet = new AnimatorSet();
if (hasAnyFlag(changedFlags, FLAG_LAUNCHER_IN_STATE_TRANSITION)) {
boolean launcherTransitionCompleted = !hasAnyFlag(FLAG_LAUNCHER_IN_STATE_TRANSITION);
playStateTransitionAnim(animatorSet, duration, launcherTransitionCompleted);
// We are skipping the taskbar stash animation for pinned taskbar, as we handle that now
// in setupPinnedTaskbarAnimation.
if (!isPinnedTaskbar) {
playStateTransitionAnim(animatorSet, duration, launcherTransitionCompleted);
}
if (launcherTransitionCompleted
&& mLauncherState == LauncherState.QUICK_SWITCH_FROM_HOME) {
@@ -613,7 +624,7 @@ public class TaskbarLauncherStateController {
AnimatedFloat taskbarBgOffset =
mControllers.taskbarDragLayerController.getTaskbarBackgroundOffset();
boolean showTaskbar = shouldShowTaskbar(mControllers.taskbarActivityContext, isInLauncher,
isInOverview);
isInOverview) && !mControllers.taskbarStashController.isInStashedLauncherState();
float taskbarBgOffsetEnd = showTaskbar ? 0f : 1f;
float taskbarBgOffsetStart = showTaskbar ? 1f : 0f;
@@ -762,6 +773,7 @@ public class TaskbarLauncherStateController {
return !isInLauncher || isInOverview;
}
// Used to stash/unstash pinned taskbar between home, overview, in app states.
private void setupPinnedTaskbarAnimation(AnimatorSet animatorSet, boolean showTaskbar,
AnimatedFloat taskbarBgOffset, float taskbarBgOffsetStart, float taskbarBgOffsetEnd,
long duration, Animator taskbarBackgroundAlpha) {