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

Commit db5af641 authored by David Nelloms's avatar David Nelloms Committed by Android (Google) Code Review
Browse files

Merge "Clear transitions for app windows display change." into qt-dev

parents 697989a6 110ed210
Loading
Loading
Loading
Loading
+5 −11
Original line number Diff line number Diff line
@@ -1322,7 +1322,9 @@ class AppWindowToken extends WindowToken implements WindowManagerService.AppFree
        if (prevDc == null || prevDc == mDisplayContent) {
            return;
        }
        if (prevDc.mChangingApps.contains(this)) {

        prevDc.mOpeningApps.remove(this);
        if (prevDc.mChangingApps.remove(this)) {
            // This gets called *after* the AppWindowToken has been reparented to the new display.
            // That reparenting resulted in this window changing modes (eg. FREEFORM -> FULLSCREEN),
            // so this token is now "frozen" while waiting for the animation to start on prevDc
@@ -1331,6 +1333,8 @@ class AppWindowToken extends WindowToken implements WindowManagerService.AppFree
            // so we need to cancel the change transition here.
            clearChangeLeash(getPendingTransaction(), true /* cancel */);
        }
        prevDc.mClosingApps.remove(this);

        if (prevDc.mFocusedApp == this) {
            prevDc.setFocusedApp(null);
            final TaskStack stack = dc.getTopStack();
@@ -3216,16 +3220,6 @@ class AppWindowToken extends WindowToken implements WindowManagerService.AppFree
                true /* topToBottom */);
    }

    void removeFromPendingTransition() {
        if (isWaitingForTransitionStart() && mDisplayContent != null) {
            mDisplayContent.mOpeningApps.remove(this);
            if (mDisplayContent.mChangingApps.remove(this)) {
                clearChangeLeash(getPendingTransaction(), true /* cancel */);
            }
            mDisplayContent.mClosingApps.remove(this);
        }
    }

    private void updateColorTransform() {
        if (mSurfaceControl != null && mLastAppSaturationInfo != null) {
            getPendingTransaction().setColorTransform(mSurfaceControl,
+0 −3
Original line number Diff line number Diff line
@@ -2377,9 +2377,6 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo
                    + " to its current displayId=" + mDisplayId);
        }

        // Clean up all pending transitions when stack reparent to another display.
        stack.forAllAppWindows(AppWindowToken::removeFromPendingTransition);

        prevDc.mTaskStackContainers.removeChild(stack);
        mTaskStackContainers.addStackToDisplay(stack, onTop);
    }