Merge "Consider the lock-task mode while using FLAG_ACTIVITY_TASK_ON_HOME" into sc-v2-dev am: e171c540da am: f9b9412168

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

Change-Id: I962f3b7e9e86585d55d9d31b983fae4150400b47
This commit is contained in:
TreeHugger Robot
2021-11-12 06:40:38 +00:00
committed by Automerger Merge Worker

View File

@@ -1112,7 +1112,11 @@ class Task extends TaskFragment {
if (inMultiWindowMode() || !hasChild()) return false;
if (intent != null) {
final int returnHomeFlags = FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_TASK_ON_HOME;
return intent != null && (intent.getFlags() & returnHomeFlags) == returnHomeFlags;
final Task task = getDisplayArea() != null ? getDisplayArea().getRootHomeTask() : null;
final boolean isLockTaskModeViolation = task != null
&& mAtmService.getLockTaskController().isLockTaskModeViolation(task);
return (intent.getFlags() & returnHomeFlags) == returnHomeFlags
&& !isLockTaskModeViolation;
}
final Task bottomTask = getBottomMostTask();
return bottomTask != this && bottomTask.returnsToHomeRootTask();