Merge "Skip updating the leash if a task is removed prior to sync completion" into tm-qpr-dev am: e2574c8d1d

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21553210

Change-Id: Idaa283dc11441d2dbe743fe1b89374c414db6b30
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Winson Chung
2023-02-23 22:43:23 +00:00
committed by Automerger Merge Worker

View File

@@ -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);
});
}