Update trackpad related feature flags in SysUI

- TRACKPAD_GESTURE_COMMON: common changes for all motion events
- TRACKPAD_GESTURE_FEATURES: specific to CLASSIFICATION_MULTI_FINGER_SWIPE

Note that CLASSIFICATION_MULTI_FINGER_SWIPE guards some changes in AOD specifically for trackpad 3-finger swipes

Bug: 273800936
Test: manual
Change-Id: Ie9046b0d6e741e507ccb12fdfdc9b2a3cf568db5
This commit is contained in:
Tracy Zhou
2023-03-15 14:08:24 -07:00
parent 9ce369b8d8
commit f9a0c46f51
6 changed files with 16 additions and 10 deletions

View File

@@ -529,7 +529,7 @@ object Flags {
// TODO(b/270987164): Tracking Bug
@JvmField
val TRACKPAD_GESTURE_BACK = unreleasedFlag(1205, "trackpad_gesture_back", teamfood = true)
val TRACKPAD_GESTURE_FEATURES = unreleasedFlag(1205, "trackpad_gesture_features", teamfood = true)
// TODO(b/263826204): Tracking Bug
@JvmField
@@ -551,6 +551,10 @@ object Flags {
val WM_ENABLE_PREDICTIVE_BACK_QS_DIALOG_ANIM =
unreleasedFlag(1209, "persist.wm.debug.predictive_back_qs_dialog_anim", teamfood = true)
// TODO(b/273800936): Tracking Bug
@JvmField
val TRACKPAD_GESTURE_COMMON = releasedFlag(1210, "trackpad_gesture_common")
// 1300 - screenshots
// TODO(b/254513155): Tracking Bug
@JvmField

View File

@@ -67,7 +67,6 @@ import com.android.systemui.dagger.qualifiers.Main;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.flags.Flags;
import com.android.systemui.model.SysUiState;
import com.android.systemui.navigationbar.NavigationBarView;
import com.android.systemui.navigationbar.NavigationModeController;
import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.NavigationEdgeBackPlugin;
@@ -591,7 +590,8 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack
// Add a nav bar panel window
mIsNewBackAffordanceEnabled = mFeatureFlags.isEnabled(Flags.NEW_BACK_AFFORDANCE);
mIsTrackpadGestureBackEnabled = mFeatureFlags.isEnabled(Flags.TRACKPAD_GESTURE_BACK);
mIsTrackpadGestureBackEnabled = mFeatureFlags.isEnabled(
Flags.TRACKPAD_GESTURE_FEATURES);
resetEdgeBackPlugin();
mPluginManager.addPluginListener(
this, NavigationEdgeBackPlugin.class, /*allowMultiple=*/ false);

View File

@@ -849,7 +849,7 @@ public final class NotificationPanelViewController implements Dumpable {
mLayoutInflater = layoutInflater;
mFeatureFlags = featureFlags;
mAnimateBack = mFeatureFlags.isEnabled(Flags.WM_SHADE_ANIMATE_BACK_GESTURE);
mTrackpadGestureBack = mFeatureFlags.isEnabled(Flags.TRACKPAD_GESTURE_BACK);
mTrackpadGestureBack = mFeatureFlags.isEnabled(Flags.TRACKPAD_GESTURE_FEATURES);
mFalsingCollector = falsingCollector;
mPowerManager = powerManager;
mWakeUpCoordinator = coordinator;

View File

@@ -16,7 +16,7 @@
package com.android.systemui.shade;
import static com.android.systemui.flags.Flags.TRACKPAD_GESTURE_BACK;
import static com.android.systemui.flags.Flags.TRACKPAD_GESTURE_COMMON;
import static com.android.systemui.util.kotlin.JavaAdapterKt.collectFlow;
import android.app.StatusBarManager;
@@ -96,7 +96,7 @@ public class NotificationShadeWindowViewController {
private final NotificationInsetsController mNotificationInsetsController;
private final AlternateBouncerInteractor mAlternateBouncerInteractor;
private final UdfpsOverlayInteractor mUdfpsOverlayInteractor;
private final boolean mIsTrackpadGestureBackEnabled;
private final boolean mIsTrackpadCommonEnabled;
private GestureDetector mPulsingWakeupGestureHandler;
private View mBrightnessMirror;
private boolean mTouchActive;
@@ -172,7 +172,7 @@ public class NotificationShadeWindowViewController {
mNotificationInsetsController = notificationInsetsController;
mAlternateBouncerInteractor = alternateBouncerInteractor;
mUdfpsOverlayInteractor = udfpsOverlayInteractor;
mIsTrackpadGestureBackEnabled = featureFlags.isEnabled(TRACKPAD_GESTURE_BACK);
mIsTrackpadCommonEnabled = featureFlags.isEnabled(TRACKPAD_GESTURE_COMMON);
// This view is not part of the newly inflated expanded status bar.
mBrightnessMirror = mView.findViewById(R.id.brightness_mirror_container);
@@ -474,7 +474,7 @@ public class NotificationShadeWindowViewController {
if (mTouchActive) {
final long now = mClock.uptimeMillis();
final MotionEvent event;
if (mIsTrackpadGestureBackEnabled) {
if (mIsTrackpadCommonEnabled) {
event = MotionEvent.obtain(mDownEvent);
event.setDownTime(now);
event.setAction(MotionEvent.ACTION_CANCEL);

View File

@@ -127,7 +127,8 @@ class NotificationShadeWindowViewControllerTest : SysuiTestCase() {
.thenReturn(emptyFlow<TransitionStep>())
val featureFlags = FakeFeatureFlags()
featureFlags.set(Flags.TRACKPAD_GESTURE_BACK, false)
featureFlags.set(Flags.TRACKPAD_GESTURE_COMMON, true)
featureFlags.set(Flags.TRACKPAD_GESTURE_FEATURES, false)
featureFlags.set(Flags.DUAL_SHADE, false)
val inputProxy = MultiShadeInputProxy()

View File

@@ -139,7 +139,8 @@ class NotificationShadeWindowViewTest : SysuiTestCase() {
.thenReturn(emptyFlow())
val featureFlags = FakeFeatureFlags()
featureFlags.set(Flags.TRACKPAD_GESTURE_BACK, false)
featureFlags.set(Flags.TRACKPAD_GESTURE_COMMON, true)
featureFlags.set(Flags.TRACKPAD_GESTURE_FEATURES, false)
featureFlags.set(Flags.DUAL_SHADE, false)
val inputProxy = MultiShadeInputProxy()
testScope = TestScope()