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

Commit 10982554 authored by Sunny Goyal's avatar Sunny Goyal Committed by Automerger Merge Worker
Browse files

Fixing recents orientation (when home rotation is allowed) during swipe-up am: 52f23924

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

Change-Id: Ib57a41296b92d13eaa9b43f03db9eb37b11d17ad
parents 3797bf8d 52f23924
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -103,6 +103,7 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy {
        mSizeStrategy = sizeStrategy;

        mOrientationState = new RecentsOrientedState(context, sizeStrategy, i -> { });
        mOrientationState.setGestureActive(true);

        mCurrentFullscreenParams = new FullscreenDrawParams(context);
        mPageSpacing = context.getResources().getDimensionPixelSize(R.dimen.recents_page_spacing);
+10 −3
Original line number Diff line number Diff line
@@ -1003,7 +1003,9 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
        mDwbToastShown = false;
        mActivity.getSystemUiController().updateUiState(UI_STATE_OVERVIEW, 0);
        LayoutUtils.setViewEnabled(mActionsView, true);
        mOrientationState.setGestureActive(false);
        if (mOrientationState.setGestureActive(false)) {
            updateOrientationHandler();
        }
    }

    public @Nullable TaskView getRunningTaskView() {
@@ -1041,7 +1043,10 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
     */
    public void onGestureAnimationStart(int runningTaskId) {
        // This needs to be called before the other states are set since it can create the task view
        mOrientationState.setGestureActive(true);
        if (mOrientationState.setGestureActive(true)) {
            updateOrientationHandler();
        }

        showCurrentTask(runningTaskId);
        setEnableFreeScroll(false);
        setEnableDrawingLiveTile(false);
@@ -1104,7 +1109,9 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
     * Called when a gesture from an app has finished.
     */
    public void onGestureAnimationEnd() {
        mOrientationState.setGestureActive(false);
        if (mOrientationState.setGestureActive(false)) {
            updateOrientationHandler();
        }

        setOnScrollChangeListener(null);
        setEnableFreeScroll(true);
+8 −15
Original line number Diff line number Diff line
@@ -188,8 +188,9 @@ public final class RecentsOrientedState implements SharedPreferences.OnSharedPre
    /**
     * Sets if the swipe up gesture is currently running or not
     */
    public void setGestureActive(boolean isGestureActive) {
    public boolean setGestureActive(boolean isGestureActive) {
        setFlag(FLAG_SWIPE_UP_NOT_RUNNING, !isGestureActive);
        return update(mTouchRotation, mDisplayRotation);
    }

    /**
@@ -202,27 +203,19 @@ public final class RecentsOrientedState implements SharedPreferences.OnSharedPre
     */
    public boolean update(
            @SurfaceRotation int touchRotation, @SurfaceRotation int displayRotation) {
        int recentsActivityRotation = inferRecentsActivityRotation(displayRotation);
        if (mDisplayRotation == displayRotation
                && mTouchRotation == touchRotation
                && mRecentsActivityRotation == recentsActivityRotation) {
            return false;
        }

        mRecentsActivityRotation = recentsActivityRotation;
        mRecentsActivityRotation = inferRecentsActivityRotation(displayRotation);
        mDisplayRotation = displayRotation;
        mTouchRotation = touchRotation;
        mPreviousRotation = touchRotation;

        if (mRecentsActivityRotation == mTouchRotation || canRecentsActivityRotate()) {
        PagedOrientationHandler oldHandler = mOrientationHandler;
        if (mRecentsActivityRotation == mTouchRotation
                || (canRecentsActivityRotate() && (mFlags & FLAG_SWIPE_UP_NOT_RUNNING) != 0)) {
            mOrientationHandler = PagedOrientationHandler.PORTRAIT;
            if (DEBUG) {
                Log.d(TAG, "current RecentsOrientedState: " + this);
            }
            return true;
        }

        if (mTouchRotation == ROTATION_90) {
        } else if (mTouchRotation == ROTATION_90) {
            mOrientationHandler = PagedOrientationHandler.LANDSCAPE;
        } else if (mTouchRotation == ROTATION_270) {
            mOrientationHandler = PagedOrientationHandler.SEASCAPE;
@@ -232,7 +225,7 @@ public final class RecentsOrientedState implements SharedPreferences.OnSharedPre
        if (DEBUG) {
            Log.d(TAG, "current RecentsOrientedState: " + this);
        }
        return true;
        return oldHandler != mOrientationHandler;
    }

    @SurfaceRotation