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

Commit cd60d191 authored by Fengjiang Li's avatar Fengjiang Li
Browse files

[Predictive Back] Replace legacy flag with aconfig flag in launcher

Fix: 323971106
Flag: ACONFIG launcher.enable_predictive_back_gesture DISABLED
Test: manual
Change-Id: Ie8051af2540699a7d75f1ed05132584d0b40d17d
parent 6474a3b4
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -91,6 +91,13 @@ flag {
    bug: "204463748"
}

flag {
    name: "enable_predictive_back_gesture"
    namespace: "launcher"
    description: "Enable predictive back gesture on Launcher (including all apps and widget picker)."
    bug: "238475505"
}

flag {
    name: "enable_shortcut_dont_suggest_app"
    namespace: "launcher"
+3 −2
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@
package com.android.launcher3.taskbar.allapps;

import static com.android.app.animation.Interpolators.EMPHASIZED;
import static com.android.launcher3.Flags.enablePredictiveBackGesture;

import android.animation.Animator;
import android.content.Context;
@@ -168,7 +169,7 @@ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverla
    protected void onAttachedToWindow() {
        super.onAttachedToWindow();
        mActivityContext.addOnDeviceProfileChangeListener(this);
        if (FeatureFlags.ENABLE_BACK_SWIPE_LAUNCHER_ANIMATION.get()) {
        if (enablePredictiveBackGesture()) {
            mAppsView.getAppsRecyclerViewContainer().setOutlineProvider(mViewOutlineProvider);
            mAppsView.getAppsRecyclerViewContainer().setClipToOutline(true);
            OnBackInvokedDispatcher dispatcher = findOnBackInvokedDispatcher();
@@ -183,7 +184,7 @@ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverla
    protected void onDetachedFromWindow() {
        super.onDetachedFromWindow();
        mActivityContext.removeOnDeviceProfileChangeListener(this);
        if (FeatureFlags.ENABLE_BACK_SWIPE_LAUNCHER_ANIMATION.get()) {
        if (enablePredictiveBackGesture()) {
            mAppsView.getAppsRecyclerViewContainer().setOutlineProvider(null);
            mAppsView.getAppsRecyclerViewContainer().setClipToOutline(false);
            OnBackInvokedDispatcher dispatcher = findOnBackInvokedDispatcher();
+3 −2
Original line number Diff line number Diff line
@@ -61,6 +61,7 @@ import static com.android.quickstep.util.SplitAnimationTimings.TABLET_HOME_TO_SP
import static com.android.quickstep.views.DesktopTaskView.isDesktopModeSupported;
import static com.android.systemui.shared.system.ActivityManagerWrapper.CLOSE_SYSTEM_WINDOWS_REASON_HOME_KEY;
import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_50_50;
import static com.android.launcher3.Flags.enablePredictiveBackGesture;

import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
@@ -645,7 +646,7 @@ public class QuickstepLauncher extends Launcher {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (Utilities.ATLEAST_U && FeatureFlags.ENABLE_BACK_SWIPE_LAUNCHER_ANIMATION.get()) {
        if (Utilities.ATLEAST_U && enablePredictiveBackGesture()) {
            getApplicationInfo().setEnableOnBackInvokedCallback(true);
        }
        if (savedInstanceState != null) {
@@ -833,7 +834,7 @@ public class QuickstepLauncher extends Launcher {

    @Override
    protected void registerBackDispatcher() {
        if (!FeatureFlags.ENABLE_BACK_SWIPE_LAUNCHER_ANIMATION.get()) {
        if (!enablePredictiveBackGesture()) {
            super.registerBackDispatcher();
            return;
        }
+2 −2
Original line number Diff line number Diff line
@@ -35,9 +35,9 @@ import androidx.test.runner.AndroidJUnit4;
import androidx.test.uiautomator.By;
import androidx.test.uiautomator.Until;

import com.android.launcher3.Flags;
import com.android.launcher3.Launcher;
import com.android.launcher3.LauncherState;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.tapl.LaunchedAppState;
import com.android.launcher3.tapl.LauncherInstrumentation.NavigationModel;
import com.android.launcher3.tapl.Overview;
@@ -394,7 +394,7 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest {
                READ_DEVICE_CONFIG_PERMISSION);
        // Debug if we need to goHome to prevent wrong previous state b/315525621
        mLauncher.goHome();
        assumeFalse(FeatureFlags.ENABLE_BACK_SWIPE_LAUNCHER_ANIMATION.get());
        assumeFalse(Flags.enablePredictiveBackGesture());
        mLauncher.getWorkspace().switchToAllApps().pressBackToWorkspace();
        waitForState("Launcher internal state didn't switch to Home", () -> LauncherState.NORMAL);

+2 −2
Original line number Diff line number Diff line
@@ -28,7 +28,7 @@ import androidx.test.filters.LargeTest;
import androidx.test.platform.app.InstrumentationRegistry;
import androidx.test.runner.AndroidJUnit4;

import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.Flags;
import com.android.launcher3.tapl.LauncherInstrumentation.TrackpadGestureType;
import com.android.launcher3.tapl.Workspace;
import com.android.launcher3.ui.AbstractLauncherUiTest;
@@ -77,7 +77,7 @@ public class TaplTestsTrackpad extends AbstractQuickStepTest {
    @NavigationModeSwitch(mode = ZERO_BUTTON)
    public void pressBack() throws Exception {
        assumeTrue(mLauncher.isTablet());
        assumeFalse(FeatureFlags.ENABLE_BACK_SWIPE_LAUNCHER_ANIMATION.get());
        assumeFalse(Flags.enablePredictiveBackGesture());
        Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation();

        try {
Loading