diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java index e2ba459068..7a50d0bf63 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java @@ -111,6 +111,11 @@ import java.util.function.Supplier; onIconAlignmentRatioChangedForAppAndHomeTransition(); mLauncher.getStateManager().addStateListener(mStateListener); + + // Initialize to the current launcher state + updateStateForFlag(FLAG_RESUMED, launcher.hasBeenResumed()); + mLauncherState = launcher.getStateManager().getState(); + applyState(0); } public void onDestroy() { diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java index 5c31e05996..afb4c9a332 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java @@ -171,9 +171,13 @@ public class TaskbarStashController { boolean isManuallyStashedInApp = supportsManualStashing() && mPrefs.getBoolean(SHARED_PREFS_STASHED_KEY, DEFAULT_STASHED_PREF); + boolean isInSetup = !mActivity.isUserSetupComplete() || sharedState.setupUIVisible; updateStateForFlag(FLAG_STASHED_IN_APP_MANUAL, isManuallyStashedInApp); - updateStateForFlag(FLAG_STASHED_IN_APP_SETUP, - !mActivity.isUserSetupComplete() || sharedState.setupUIVisible); + updateStateForFlag(FLAG_STASHED_IN_APP_SETUP, isInSetup); + if (isInSetup) { + // Update the in-app state to ensure isStashed() reflects right state during SUW + updateStateForFlag(FLAG_IN_APP, true); + } applyState(); notifyStashChange(/* visible */ false, /* stashed */ isStashedInApp());