Merge "Allow auto-pip when starting activity with FLAG_ACTIVITY_NO_ANIMATION" into tm-qpr-dev am: 77338a2cf4

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

Change-Id: If5d3b748e69add0e249831ce82a643ba89e3c632
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Hongwei Wang
2022-08-31 16:56:21 +00:00
committed by Automerger Merge Worker

View File

@@ -60,10 +60,7 @@ import static android.view.WindowManager.TRANSIT_CHANGE;
import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_CLOSE;
import static android.view.WindowManager.TRANSIT_FLAG_APP_CRASHED; import static android.view.WindowManager.TRANSIT_FLAG_APP_CRASHED;
import static android.view.WindowManager.TRANSIT_NONE; import static android.view.WindowManager.TRANSIT_NONE;
import static android.view.WindowManager.TRANSIT_OLD_ACTIVITY_OPEN;
import static android.view.WindowManager.TRANSIT_OLD_TASK_CHANGE_WINDOWING_MODE; import static android.view.WindowManager.TRANSIT_OLD_TASK_CHANGE_WINDOWING_MODE;
import static android.view.WindowManager.TRANSIT_OLD_TASK_OPEN;
import static android.view.WindowManager.TRANSIT_OLD_TASK_OPEN_BEHIND;
import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_OPEN;
import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_BACK;
import static android.view.WindowManager.TRANSIT_TO_FRONT; import static android.view.WindowManager.TRANSIT_TO_FRONT;
@@ -4979,22 +4976,16 @@ class Task extends TaskFragment {
dc.prepareAppTransition(TRANSIT_NONE); dc.prepareAppTransition(TRANSIT_NONE);
mTaskSupervisor.mNoAnimActivities.add(r); mTaskSupervisor.mNoAnimActivities.add(r);
} else { } else {
int transit = TRANSIT_OLD_ACTIVITY_OPEN; dc.prepareAppTransition(TRANSIT_OPEN);
if (newTask) { mTaskSupervisor.mNoAnimActivities.remove(r);
if (r.mLaunchTaskBehind) { }
transit = TRANSIT_OLD_TASK_OPEN_BEHIND; if (newTask && !r.mLaunchTaskBehind) {
} else {
// If a new task is being launched, then mark the existing top activity as // If a new task is being launched, then mark the existing top activity as
// supporting picture-in-picture while pausing only if the starting activity // supporting picture-in-picture while pausing only if the starting activity
// would not be considered an overlay on top of the current activity // would not be considered an overlay on top of the current activity
// (eg. not fullscreen, or the assistant) // (eg. not fullscreen, or the assistant)
enableEnterPipOnTaskSwitch(pipCandidate, enableEnterPipOnTaskSwitch(pipCandidate,
null /* toFrontTask */, r, options); null /* toFrontTask */, r, options);
transit = TRANSIT_OLD_TASK_OPEN;
}
}
dc.prepareAppTransition(TRANSIT_OPEN);
mTaskSupervisor.mNoAnimActivities.remove(r);
} }
boolean doShow = true; boolean doShow = true;
if (newTask) { if (newTask) {