Merge "Prevent cancel entering split due to animation got canceled" into tm-qpr-dev am: 788f62aed4 am: e75c1a2633
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21437425 Change-Id: I095f5f46e17e75de170bebd19f29b5022d6c9678 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -499,6 +499,11 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else if (mSideStage.getChildCount() != 0) {
|
||||
// There are chances the entering app transition got canceled by performing
|
||||
// rotation transition. Checks if there is any child task existed in split
|
||||
// screen before fallback to cancel entering flow.
|
||||
openingToSide = true;
|
||||
}
|
||||
|
||||
if (isEnteringSplit && !openingToSide) {
|
||||
@@ -515,7 +520,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
|
||||
}
|
||||
}
|
||||
|
||||
if (!isEnteringSplit && openingToSide) {
|
||||
if (!isEnteringSplit && apps != null) {
|
||||
final WindowContainerTransaction evictWct = new WindowContainerTransaction();
|
||||
prepareEvictNonOpeningChildTasks(position, apps, evictWct);
|
||||
mSyncQueue.queue(evictWct);
|
||||
@@ -598,6 +603,11 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else if (mSideStage.getChildCount() != 0) {
|
||||
// There are chances the entering app transition got canceled by performing
|
||||
// rotation transition. Checks if there is any child task existed in split
|
||||
// screen before fallback to cancel entering flow.
|
||||
openingToSide = true;
|
||||
}
|
||||
|
||||
if (isEnteringSplit && !openingToSide && apps != null) {
|
||||
@@ -624,7 +634,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
|
||||
}
|
||||
|
||||
|
||||
if (!isEnteringSplit && openingToSide) {
|
||||
if (!isEnteringSplit && apps != null) {
|
||||
final WindowContainerTransaction evictWct = new WindowContainerTransaction();
|
||||
prepareEvictNonOpeningChildTasks(position, apps, evictWct);
|
||||
mSyncQueue.queue(evictWct);
|
||||
|
||||
Reference in New Issue
Block a user