From dee687c33a1ebfb82f19ef0af0eb8aa52486bd0b Mon Sep 17 00:00:00 2001 From: Brandon Dayauon Date: Tue, 7 Mar 2023 19:51:09 -0800 Subject: [PATCH] Play original haptic when feature flag is off. Rename feature flag - Remove the Utilities.atLeast check since it's no longer relevant as there is no new haptics being played in the original haptic.. When FeatureFlag is off, the haptic for all apps and qsb is played in one place. So when FeatureFlag is on, we need to isolate where the haptic call gets played so we disable calling it from two places and play the haptics at the respective areas. flag: ENABLE_PREMIUM_HAPTICS_ALL_APPS=false bug: 270634265 test: Manual Change-Id: I7b92c427e880b196130270ed9709cf1ea0e19e0a --- .../NoButtonNavbarToOverviewTouchController.java | 2 +- .../launcher3/allapps/AllAppsTransitionController.java | 7 ++++--- src/com/android/launcher3/config/FeatureFlags.java | 5 +++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java index df95dc1275..b7bafd8969 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java @@ -191,7 +191,7 @@ public class NoButtonNavbarToOverviewTouchController extends PortraitStatesTouch // need to manually set the duration to a reasonable value. animator.setDuration(HINT_STATE.getTransitionDuration(mLauncher, true /* isToState */)); } - if (FeatureFlags.ENABLE_HAPTICS_ALL_APPS.get() && + if (FeatureFlags.ENABLE_PREMIUM_HAPTICS_ALL_APPS.get() && ((mFromState == NORMAL && mToState == ALL_APPS) || (mFromState == ALL_APPS && mToState == NORMAL)) && isFling) { mVibratorWrapper.vibrateForDragBump(); diff --git a/src/com/android/launcher3/allapps/AllAppsTransitionController.java b/src/com/android/launcher3/allapps/AllAppsTransitionController.java index 54bf6a8932..85d7a05406 100644 --- a/src/com/android/launcher3/allapps/AllAppsTransitionController.java +++ b/src/com/android/launcher3/allapps/AllAppsTransitionController.java @@ -355,7 +355,7 @@ public class AllAppsTransitionController }); } - if(FeatureFlags.ENABLE_HAPTICS_ALL_APPS.get() && config.userControlled + if(FeatureFlags.ENABLE_PREMIUM_HAPTICS_ALL_APPS.get() && config.userControlled && Utilities.ATLEAST_S) { if (toState == ALL_APPS) { builder.addOnFrameListener( @@ -385,8 +385,9 @@ public class AllAppsTransitionController builder.add(anim); setAlphas(toState, config, builder); - - if (ALL_APPS.equals(toState) && mLauncher.isInState(NORMAL) && !(Utilities.ATLEAST_S)) { + // This controls both haptics for tapping on QSB and going to all apps. + if (ALL_APPS.equals(toState) && mLauncher.isInState(NORMAL) && + !FeatureFlags.ENABLE_PREMIUM_HAPTICS_ALL_APPS.get()) { mLauncher.getAppsView().performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY, HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING); } diff --git a/src/com/android/launcher3/config/FeatureFlags.java b/src/com/android/launcher3/config/FeatureFlags.java index 98b61d1e4c..6bb2a0f0a8 100644 --- a/src/com/android/launcher3/config/FeatureFlags.java +++ b/src/com/android/launcher3/config/FeatureFlags.java @@ -352,8 +352,9 @@ public final class FeatureFlags { "Enable the ability to tap a staged app during split select to launch it in full screen" ); - public static final BooleanFlag ENABLE_HAPTICS_ALL_APPS = getDebugFlag(270396358, - "ENABLE_HAPTICS_ALL_APPS", false, "Enables haptics opening/closing All apps"); + public static final BooleanFlag ENABLE_PREMIUM_HAPTICS_ALL_APPS = getDebugFlag(270396358, + "ENABLE_PREMIUM_HAPTICS_ALL_APPS", false, + "Enables haptics opening/closing All apps"); public static final BooleanFlag ENABLE_FORCED_MONO_ICON = getDebugFlag(270396209, "ENABLE_FORCED_MONO_ICON", false,