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

Commit 792fcc3a authored by Kevin's avatar Kevin
Browse files

Remove OverviewToAllAppsController for Go

Go's recents does not support an overview to all apps transition (as
there will be no hotseat and swiping will be used to navigate the view
itself). As a result, we never need the controller, so we don't take in
the class as a source and do not add it as a touch controller.

Bug: 114136250
Test: Manual test Launcher3QuickstepGo, NexusLauncher,
Launcher3IconRecentsGo
Change-Id: I7fff9d1e8727bd978e84462436e37219c57f7af6
parent 38e87e80
Loading
Loading
Loading
Loading
+16 −1
Original line number Diff line number Diff line
@@ -22,6 +22,8 @@ import static com.android.launcher3.LauncherAnimUtils.SCALE_PROPERTY;

import android.view.View;

import androidx.annotation.Nullable;

import com.android.launcher3.Launcher;
import com.android.launcher3.LauncherStateManager.StateHandler;
import com.android.launcher3.util.TouchController;
@@ -42,11 +44,24 @@ public final class RecentsUiFactory {
     * @param launcher the launcher activity
     * @return the touch controller for recents tasks
     */
    public static TouchController createTaskSwipeController(Launcher launcher) {
    public static @Nullable TouchController createTaskSwipeController(Launcher launcher) {
        // We leave all input handling to the view itself.
        return null;
    }

    /**
     * Creates and returns a touch controller for swiping from overview state to the all apps state
     * if such an action is supported.
     *
     * @param launcher the launcher activity
     * @return the touch controller for swiping from overview to all apps
     */
    public static @Nullable TouchController createOverviewToAllAppsTouchController(
            Launcher launcher) {
        // Go does not support overview to all apps transition.
        return null;
    }

    /**
     * Creates and returns the controller responsible for recents view state transitions.
     *
+0 −0

File moved.

+21 −1
Original line number Diff line number Diff line
@@ -22,11 +22,14 @@ import static com.android.launcher3.LauncherAnimUtils.SCALE_PROPERTY;
import static com.android.launcher3.LauncherState.NORMAL;
import static com.android.launcher3.LauncherState.OVERVIEW;

import androidx.annotation.Nullable;

import com.android.launcher3.Launcher;
import com.android.launcher3.LauncherState;
import com.android.launcher3.LauncherStateManager.StateHandler;
import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.util.TouchController;
import com.android.quickstep.OverviewInteractionState;
import com.android.quickstep.views.RecentsView;

/**
@@ -45,10 +48,27 @@ public final class RecentsUiFactory {
     * @param launcher the launcher activity
     * @return the touch controller for recents tasks
     */
    public static TouchController createTaskSwipeController(Launcher launcher) {
    public static @Nullable TouchController createTaskSwipeController(Launcher launcher) {
        return new LauncherTaskViewController(launcher);
    }

    /**
     * Creates and returns a touch controller for swiping from overview state to the all apps state
     * if such an action is supported.
     *
     * @param launcher the launcher activity
     * @return the touch controller for swiping from overview to all apps
     */
    public static @Nullable TouchController createOverviewToAllAppsTouchController(
            Launcher launcher) {
        boolean swipeUpEnabled = OverviewInteractionState.INSTANCE.get(launcher)
                .isSwipeUpGestureEnabled();
        if (!swipeUpEnabled || launcher.getDeviceProfile().isVerticalBarLayout()) {
            return new OverviewToAllAppsTouchController(launcher);
        }
        return null;
    }

    /**
     * Creates and returns the controller responsible for recents view state transitions.
     *
+4 −5
Original line number Diff line number Diff line
@@ -60,15 +60,14 @@ public class UiFactory {
            WindowManagerWrapper.getInstance().setShelfHeight(visible != 0, height);

    public static TouchController[] createTouchControllers(Launcher launcher) {
        boolean swipeUpEnabled = OverviewInteractionState.INSTANCE.get(launcher)
                .isSwipeUpGestureEnabled();
        ArrayList<TouchController> list = new ArrayList<>();
        list.add(launcher.getDragController());

        if (!swipeUpEnabled || launcher.getDeviceProfile().isVerticalBarLayout()) {
            list.add(new OverviewToAllAppsTouchController(launcher));
        TouchController overviewToAllAppsController =
                RecentsUiFactory.createOverviewToAllAppsTouchController(launcher);
        if (overviewToAllAppsController != null) {
            list.add(overviewToAllAppsController);
        }

        if (launcher.getDeviceProfile().isVerticalBarLayout()) {
            list.add(new LandscapeEdgeSwipeController(launcher));
        } else {