diff --git a/aconfig/launcher.aconfig b/aconfig/launcher.aconfig index c0cdb9a875..43b92fae23 100644 --- a/aconfig/launcher.aconfig +++ b/aconfig/launcher.aconfig @@ -405,3 +405,10 @@ flag { description: "Show an 'Undo' snackbar when users dismiss a predicted hotseat item" bug: "270394476" } + +flag { + name: "enable_all_apps_button_in_hotseat" + namespace: "launcher" + description: "Enables displaying the all apps button in the hotseat." + bug: "270393897" +} diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java index c14b267dd2..901b646374 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java @@ -1695,7 +1695,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { duration); View allAppsButton = mControllers.taskbarViewController.getAllAppsButtonView(); - if (allAppsButton != null && !FeatureFlags.ENABLE_ALL_APPS_BUTTON_IN_HOTSEAT.get()) { + if (allAppsButton != null && !FeatureFlags.enableAllAppsButtonInHotseat()) { ValueAnimator alphaOverride = ValueAnimator.ofFloat(0, 1); alphaOverride.setDuration(duration); alphaOverride.addUpdateListener(a -> { diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java index 0d65c7b4ec..b663ccb44e 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java @@ -837,7 +837,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar // plays iconAlignment to 1 really fast, therefore moving the fading towards the end // to avoid icons disappearing rather than fading out visually. setter.setViewAlpha(child, 0, Interpolators.clampToProgress(LINEAR, 0.8f, 1f)); - } else if ((isAllAppsButton && !FeatureFlags.ENABLE_ALL_APPS_BUTTON_IN_HOTSEAT.get()) + } else if ((isAllAppsButton && !FeatureFlags.enableAllAppsButtonInHotseat()) || (isTaskbarDividerView && enableTaskbarPinning()) || (isRecentTask && !isRecentsInHotseat)) { if (!isToHome diff --git a/src/com/android/launcher3/config/FeatureFlags.java b/src/com/android/launcher3/config/FeatureFlags.java index 998b2bbca2..db920cf56a 100644 --- a/src/com/android/launcher3/config/FeatureFlags.java +++ b/src/com/android/launcher3/config/FeatureFlags.java @@ -257,10 +257,15 @@ public final class FeatureFlags { } // TODO(Block 29): Clean up flags + // Aconfig migration complete for ENABLE_ALL_APPS_BUTTON_IN_HOTSEAT. public static final BooleanFlag ENABLE_ALL_APPS_BUTTON_IN_HOTSEAT = getDebugFlag(270393897, "ENABLE_ALL_APPS_BUTTON_IN_HOTSEAT", DISABLED, "Enables displaying the all apps button in the hotseat."); + public static boolean enableAllAppsButtonInHotseat() { + return ENABLE_ALL_APPS_BUTTON_IN_HOTSEAT.get() || Flags.enableAllAppsButtonInHotseat(); + } + // TODO(Block 30): Clean up flags public static final BooleanFlag USE_SEARCH_REQUEST_TIMEOUT_OVERRIDES = getDebugFlag(270395010, "USE_SEARCH_REQUEST_TIMEOUT_OVERRIDES", DISABLED,