mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-20 19:38:21 +00:00
Merge "Add feature flag to force taskbar to be persistent." into tm-qpr-dev am: ef8677169c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20622942 Change-Id: Ia758acdad42c8f95b9ee52d37d0bf7a3f2c63e80 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -19,6 +19,7 @@ import static android.view.HapticFeedbackConstants.LONG_PRESS;
|
||||
|
||||
import static com.android.launcher3.anim.Interpolators.FINAL_FRAME;
|
||||
import static com.android.launcher3.anim.Interpolators.INSTANT;
|
||||
import static com.android.launcher3.config.FeatureFlags.FORCE_PERSISTENT_TASKBAR;
|
||||
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASKBAR_LONGPRESS_HIDE;
|
||||
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASKBAR_LONGPRESS_SHOW;
|
||||
import static com.android.launcher3.taskbar.Utilities.appendFlag;
|
||||
@@ -241,8 +242,9 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba
|
||||
// it to work properly for tests that recreate taskbar. This check is here just to ensure
|
||||
// that taskbar unstashes when going to 3 button mode (supportsVisualStashing() false).
|
||||
boolean isManuallyStashedInApp = supportsVisualStashing()
|
||||
&& mPrefs.getBoolean(SHARED_PREFS_STASHED_KEY, DEFAULT_STASHED_PREF)
|
||||
&& !isTransientTaskbar;
|
||||
&& !isTransientTaskbar
|
||||
&& !FORCE_PERSISTENT_TASKBAR.get()
|
||||
&& mPrefs.getBoolean(SHARED_PREFS_STASHED_KEY, DEFAULT_STASHED_PREF);
|
||||
boolean isInSetup = !mActivity.isUserSetupComplete() || setupUIVisible;
|
||||
updateStateForFlag(FLAG_STASHED_IN_APP_MANUAL, isManuallyStashedInApp);
|
||||
updateStateForFlag(FLAG_STASHED_IN_APP_AUTO, isTransientTaskbar);
|
||||
@@ -270,6 +272,9 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba
|
||||
* Returns whether the user can manually stash the taskbar based on the current device state.
|
||||
*/
|
||||
protected boolean supportsManualStashing() {
|
||||
if (FORCE_PERSISTENT_TASKBAR.get()) {
|
||||
return false;
|
||||
}
|
||||
return supportsVisualStashing()
|
||||
&& isInApp()
|
||||
&& (!Utilities.IS_RUNNING_IN_TEST_HARNESS || mEnableManualStashingDuringTests)
|
||||
|
||||
@@ -338,6 +338,10 @@ public final class FeatureFlags {
|
||||
"ENABLE_TASKBAR_REVISED_THRESHOLDS", false,
|
||||
"Uses revised thresholds for transient taskbar.");
|
||||
|
||||
public static final BooleanFlag FORCE_PERSISTENT_TASKBAR = getDebugFlag(
|
||||
"FORCE_PERSISTENT_TASKBAR", false, "Forces taskbar to be persistent, even in gesture"
|
||||
+ " nav mode and when transient taskbar is enabled.");
|
||||
|
||||
public static final BooleanFlag ENABLE_TRANSIENT_TASKBAR = getDebugFlag(
|
||||
"ENABLE_TRANSIENT_TASKBAR", false, "Enables transient taskbar.");
|
||||
|
||||
|
||||
@@ -21,6 +21,7 @@ import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION;
|
||||
|
||||
import static com.android.launcher3.Utilities.dpiFromPx;
|
||||
import static com.android.launcher3.config.FeatureFlags.ENABLE_TRANSIENT_TASKBAR;
|
||||
import static com.android.launcher3.config.FeatureFlags.FORCE_PERSISTENT_TASKBAR;
|
||||
import static com.android.launcher3.util.Executors.MAIN_EXECUTOR;
|
||||
import static com.android.launcher3.util.PackageManagerHelper.getPackageFilter;
|
||||
import static com.android.launcher3.util.window.WindowManagerProxy.MIN_TABLET_WIDTH;
|
||||
@@ -130,6 +131,9 @@ public class DisplayController implements ComponentCallbacks, SafeCloseable {
|
||||
* Returns whether taskbar is transient.
|
||||
*/
|
||||
public static boolean isTransientTaskbar(Context context) {
|
||||
if (FORCE_PERSISTENT_TASKBAR.get()) {
|
||||
return false;
|
||||
}
|
||||
return getNavigationMode(context) == NavigationMode.NO_BUTTON
|
||||
&& (Utilities.IS_RUNNING_IN_TEST_HARNESS
|
||||
? sTransientTaskbarStatusForTests
|
||||
|
||||
Reference in New Issue
Block a user