diff options
| author | 2022-12-12 06:00:52 +0000 | |
|---|---|---|
| committer | 2022-12-12 06:00:52 +0000 | |
| commit | 2016b1dcd1410e2cc03cb4bb44a3d988f97a37f4 (patch) | |
| tree | f6b6d0aa9a5922755d84983926f9e2b371d5b105 | |
| parent | e87c348fcd9b8eba90b46be9f2e3558a8640f770 (diff) | |
| parent | 9eef8ebc44d1d70f0cb9f8b34bdb1ff885227f68 (diff) | |
Merge "Check lock-task mode if task_on_home is applied" into tm-qpr-dev
| -rw-r--r-- | services/core/java/com/android/server/wm/Task.java | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java index fd11246ddf66..292ed951b7e7 100644 --- a/services/core/java/com/android/server/wm/Task.java +++ b/services/core/java/com/android/server/wm/Task.java @@ -1125,11 +1125,12 @@ class Task extends TaskFragment { if (inMultiWindowMode() || !hasChild()) return false; if (intent != null) { final int returnHomeFlags = FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_TASK_ON_HOME; + if ((intent.getFlags() & returnHomeFlags) != returnHomeFlags) { + return false; + } final Task task = getDisplayArea() != null ? getDisplayArea().getRootHomeTask() : null; - final boolean isLockTaskModeViolation = task != null - && mAtmService.getLockTaskController().isLockTaskModeViolation(task); - return (intent.getFlags() & returnHomeFlags) == returnHomeFlags - && !isLockTaskModeViolation; + return !(task != null + && mAtmService.getLockTaskController().isLockTaskModeViolation(task)); } final Task bottomTask = getBottomMostTask(); return bottomTask != this && bottomTask.returnsToHomeRootTask(); |