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

Commit 5502ffbf authored by Winson Chung's avatar Winson Chung
Browse files

Skip updating the leash if a task is removed prior to sync completion

- Only affects legacy transitions

Fixes: 243848364
Test: atest TaplTestsQuickstep
Change-Id: I9d646573e446833ded399676e0a13d8fa4d47733
parent c3a40b49
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -108,6 +108,10 @@ public class FullscreenTaskListener implements ShellTaskOrganizer.TaskListener {
        }
        if (!createdWindowDecor) {
            mSyncQueue.runInSync(t -> {
                if (!leash.isValid()) {
                    // Task vanished before sync completion
                    return;
                }
                // Reset several properties back to fullscreen (PiP, for example, leaves all these
                // properties in a bad state).
                t.setWindowCrop(leash, null);
@@ -136,6 +140,10 @@ public class FullscreenTaskListener implements ShellTaskOrganizer.TaskListener {
        final Point positionInParent = state.mTaskInfo.positionInParent;
        if (!oldPositionInParent.equals(state.mTaskInfo.positionInParent)) {
            mSyncQueue.runInSync(t -> {
                if (!state.mLeash.isValid()) {
                    // Task vanished before sync completion
                    return;
                }
                t.setPosition(state.mLeash, positionInParent.x, positionInParent.y);
            });
        }