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

Commit f9a0c46f authored by Tracy Zhou's avatar Tracy Zhou
Browse files

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
parent 9ce369b8
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -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
+2 −2
Original line number Diff line number Diff line
@@ -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);
+1 −1
Original line number Diff line number Diff line
@@ -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;
+4 −4
Original line number Diff line number Diff line
@@ -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);
+2 −1
Original line number Diff line number Diff line
@@ -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()
Loading