diff options
| author | 2022-05-10 04:59:56 +0000 | |
|---|---|---|
| committer | 2022-05-10 04:59:56 +0000 | |
| commit | 5f99fcc0ecc1134ae80f7fe5c7fdcfa2168af1f7 (patch) | |
| tree | 172594bc1ebae751c3be4abe8caffb9dd24f4fcd | |
| parent | 9cb05eaa753ad5ae62dc1d3987728abb0ef909fc (diff) | |
| parent | 0c893536cf8453316b0ccab9468d0d1e1d6f2116 (diff) | |
Merge "Destroy the last embedded activity immediately" into tm-dev
| -rw-r--r-- | services/core/java/com/android/server/wm/ActivityRecord.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java index 791d193f36ab..e6be1371e2c5 100644 --- a/services/core/java/com/android/server/wm/ActivityRecord.java +++ b/services/core/java/com/android/server/wm/ActivityRecord.java @@ -3532,7 +3532,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A final ActivityRecord next = getDisplayArea().topRunningActivity( true /* considerKeyguardState */); - // If the finishing activity is the last activity of a organized TaskFragment and has an + // If the finishing activity is the last activity of an organized TaskFragment and has an // adjacent TaskFragment, check if the activity removal should be delayed. boolean delayRemoval = false; final TaskFragment taskFragment = getTaskFragment(); @@ -3540,7 +3540,8 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A final TaskFragment organized = taskFragment.getOrganizedTaskFragment(); final TaskFragment adjacent = organized != null ? organized.getAdjacentTaskFragment() : null; - if (adjacent != null && organized.topRunningActivity() == null) { + if (adjacent != null && next.isDescendantOf(adjacent) + && organized.topRunningActivity() == null) { delayRemoval = organized.isDelayLastActivityRemoval(); } } |