Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e424570a authored by Jagrut Desai's avatar Jagrut Desai
Browse files

Fixing taskbar unstashing after unfolding

Test: Manual,
Bug: 312723553
Flag: ACONFIG com.android.launcher3.enable_taskbar_pinning TRUNKFOOD
Change-Id: Iddd10df6e40ee2de4ef08eb18df88d48b7468035
parent 4638d4c8
Loading
Loading
Loading
Loading
+11 −4
Original line number Original line Diff line number Diff line
@@ -310,8 +310,16 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba


        boolean isTransientTaskbar = DisplayController.isTransientTaskbar(mActivity);
        boolean isTransientTaskbar = DisplayController.isTransientTaskbar(mActivity);
        boolean isInSetup = !mActivity.isUserSetupComplete() || setupUIVisible;
        boolean isInSetup = !mActivity.isUserSetupComplete() || setupUIVisible;
        boolean isStashedInAppAuto =
        boolean taskbarWasPinned = mTaskbarSharedState.getTaskbarWasPinned();
                isTransientTaskbar && !mTaskbarSharedState.getTaskbarWasPinned();
        boolean isStashedInAppAuto = isTransientTaskbar && !taskbarWasPinned;

        // now that we know we need to keep transient taskbar unstashed after unpinning animation
        // we need to reset the shared state, so everytime user recreates taskbar we don't unstash
        // transient taskbar by default.
        if (mTaskbarSharedState.getTaskbarWasPinned()) {
            mTaskbarSharedState.setTaskbarWasPinned(false);
        }

        if (ENABLE_TASKBAR_NAVBAR_UNIFICATION) {
        if (ENABLE_TASKBAR_NAVBAR_UNIFICATION) {
            isStashedInAppAuto = isStashedInAppAuto && mTaskbarSharedState.taskbarWasStashedAuto;
            isStashedInAppAuto = isStashedInAppAuto && mTaskbarSharedState.taskbarWasStashedAuto;
        }
        }
@@ -324,8 +332,7 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba
        // us that we're paused until a bit later. This avoids flickering upon recreating taskbar.
        // us that we're paused until a bit later. This avoids flickering upon recreating taskbar.
        updateStateForFlag(FLAG_IN_APP, true);
        updateStateForFlag(FLAG_IN_APP, true);
        applyState(/* duration = */ 0);
        applyState(/* duration = */ 0);
        if (mTaskbarSharedState.getTaskbarWasPinned()
        if (taskbarWasPinned || !mTaskbarSharedState.taskbarWasStashedAuto) {
                || !mTaskbarSharedState.taskbarWasStashedAuto) {
            tryStartTaskbarTimeout();
            tryStartTaskbarTimeout();
        }
        }
        notifyStashChange(/* visible */ false, /* stashed */ isStashedInApp());
        notifyStashChange(/* visible */ false, /* stashed */ isStashedInApp());