Merge "Fix dragging the same app over a split app dismisses the split"

This commit is contained in:
Jerry Chang
2022-02-16 01:02:35 +00:00
committed by Android (Google) Code Review

View File

@@ -349,17 +349,20 @@ public class SplitScreenController implements DragAndDropPolicy.Starter,
RemoteAnimationTarget[] wallpapers, RemoteAnimationTarget[] nonApps,
IRemoteAnimationFinishedCallback finishedCallback,
SurfaceControl.Transaction t) {
mStageCoordinator.updateSurfaceBounds(null /* layout */, t);
if (apps != null) {
for (int i = 0; i < apps.length; ++i) {
if (apps[i].mode == MODE_OPENING) {
t.show(apps[i].leash);
}
}
if (apps == null || apps.length == 0) {
// Do nothing when the animation was cancelled.
t.apply();
return;
}
mStageCoordinator.updateSurfaceBounds(null /* layout */, t);
for (int i = 0; i < apps.length; ++i) {
if (apps[i].mode == MODE_OPENING) {
t.show(apps[i].leash);
}
}
t.apply();
if (finishedCallback != null) {
try {
finishedCallback.onAnimationFinished();