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

Commit 438d1c53 authored by Evan Rosky's avatar Evan Rosky Committed by Android (Google) Code Review
Browse files

Merge "Fix rotation shell transition" into sc-v2-dev

parents 1cf060f1 20a817a1
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -8183,7 +8183,9 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
        if (shouldRelaunchLocked(changes, mTmpConfig) || forceNewConfig) {
            // Aha, the activity isn't handling the change, so DIE DIE DIE.
            configChangeFlags |= changes;
            if (!mAtmService.getTransitionController().isShellTransitionsEnabled()) {
                startFreezingScreenLocked(globalChanges);
            }
            forceNewConfig = false;
            preserveWindow &= isResizeOnlyChange(changes);
            final boolean hasResizeChange = hasResizeChange(changes & ~info.getRealConfigChanged());
+6 −2
Original line number Diff line number Diff line
@@ -2403,6 +2403,12 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP

    @Override
    void removeImmediately() {
        if (!mRemoved) {
            // Destroy surface before super call. The general pattern is that the children need
            // to be removed before the parent (so that the sync-engine tracking works). Since
            // WindowStateAnimator is a "virtual" child, we have to do it manually here.
            mWinAnimator.destroySurfaceLocked(getSyncTransaction());
        }
        super.removeImmediately();

        if (mRemoved) {
@@ -2444,8 +2450,6 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP

        disposeInputChannel();

        mWinAnimator.destroySurfaceLocked(mTmpTransaction);
        mTmpTransaction.apply();
        mSession.windowRemovedLocked();
        try {
            mClient.asBinder().unlinkToDeath(mDeathRecipient, 0);