Move back display ID for ActivityOptions.

ActivityStackSupervisor#getLaunchStack() is used in ActivityStarter,
ActivityStackSupervisor#findTaskToMoveToFront() and
ActivityStackSupervisor#anyTaskForIdLocked(). Only ActivityStarter has
LaunchParams so we still need to take the display ID from
ActivityOptions to avoid further regressions in other cases.

Bug: 119794136
Test: Manual test. go/wm-smoke.
Change-Id: Ia18bf19cf3648fc416364d78ef4b0b37c576cef4
This commit is contained in:
Garfield Tan
2018-11-20 15:03:11 -08:00
parent d0f47278c4
commit c63d39d01c

View File

@@ -2429,6 +2429,7 @@ public class ActivityStackSupervisor extends ConfigurationContainer implements D
// We give preference to the launch preference in activity options.
if (options != null) {
taskId = options.getLaunchTaskId();
displayId = options.getLaunchDisplayId();
}
// First preference for stack goes to the task Id set in the activity options. Use the stack
@@ -2448,7 +2449,7 @@ public class ActivityStackSupervisor extends ConfigurationContainer implements D
T stack;
// Next preference for stack goes to the display Id set the candidate display.
if (launchParams != null) {
if (launchParams != null && launchParams.mPreferredDisplayId != INVALID_DISPLAY) {
displayId = launchParams.mPreferredDisplayId;
}
if (displayId != INVALID_DISPLAY && canLaunchOnDisplay(r, displayId)) {