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

Commit af44c7f9 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Force initialize task stack callback for gesture modes on init" into sc-dev am: e1a5d6bb

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/14754620

Change-Id: I65d94d520827ed3a9ed586853a6b533fdbf43fd4
parents 3fe81d15 e1a5d6bb
Loading
Loading
Loading
Loading
+12 −3
Original line number Original line Diff line number Diff line
@@ -152,7 +152,7 @@ public class RotationTouchHelper implements


        // Register for navigation mode changes
        // Register for navigation mode changes
        SysUINavigationMode.Mode newMode = mSysUiNavMode.addModeChangeListener(this);
        SysUINavigationMode.Mode newMode = mSysUiNavMode.addModeChangeListener(this);
        onNavigationModeChanged(newMode);
        onNavModeChangedInternal(newMode, newMode.hasGestures);
        runOnDestroy(() -> mSysUiNavMode.removeModeChangeListener(this));
        runOnDestroy(() -> mSysUiNavMode.removeModeChangeListener(this));


        mOrientationListener = new OrientationEventListener(mContext) {
        mOrientationListener = new OrientationEventListener(mContext) {
@@ -245,13 +245,22 @@ public class RotationTouchHelper implements


    @Override
    @Override
    public void onNavigationModeChanged(SysUINavigationMode.Mode newMode) {
    public void onNavigationModeChanged(SysUINavigationMode.Mode newMode) {
        onNavModeChangedInternal(newMode, false);
    }

    /**
     * @param forceRegister if {@code true}, this will register {@link #mFrozenTaskListener} via
     *                      {@link #setupOrientationSwipeHandler()}
     */
    private void onNavModeChangedInternal(SysUINavigationMode.Mode newMode, boolean forceRegister) {
        mDisplayController.removeChangeListener(this);
        mDisplayController.removeChangeListener(this);
        mDisplayController.addChangeListener(this);
        mDisplayController.addChangeListener(this);
        onDisplayInfoChanged(mContext, mDisplayController.getInfo(), CHANGE_ALL);
        onDisplayInfoChanged(mContext, mDisplayController.getInfo(), CHANGE_ALL);


        mOrientationTouchTransformer.setNavigationMode(newMode, mDisplayController.getInfo(),
        mOrientationTouchTransformer.setNavigationMode(newMode, mDisplayController.getInfo(),
                mContext.getResources());
                mContext.getResources());
        if (!mMode.hasGestures && newMode.hasGestures) {

        if (forceRegister || (!mMode.hasGestures && newMode.hasGestures)) {
            setupOrientationSwipeHandler();
            setupOrientationSwipeHandler();
        } else if (mMode.hasGestures && !newMode.hasGestures){
        } else if (mMode.hasGestures && !newMode.hasGestures){
            destroyOrientationSwipeHandlerCallback();
            destroyOrientationSwipeHandlerCallback();