summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--services/java/com/android/server/am/ActivityStack.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/services/java/com/android/server/am/ActivityStack.java b/services/java/com/android/server/am/ActivityStack.java
index 5e6bdb1..1e19989 100644
--- a/services/java/com/android/server/am/ActivityStack.java
+++ b/services/java/com/android/server/am/ActivityStack.java
@@ -3298,13 +3298,16 @@ final class ActivityStack {
if (mLastPausedActivity != null && mLastPausedActivity.app == app) {
mLastPausedActivity = null;
}
+ final ActivityRecord top = topRunningActivityLocked(null);
+ final boolean launchHomeTaskNext =
+ top != null && top.app == app && top.mLaunchHomeTaskNext;
// Remove this application's activities from active lists.
boolean hasVisibleActivities = removeHistoryRecordsForAppLocked(app);
if (!restarting) {
ActivityStack stack = mStackSupervisor.getFocusedStack();
- if (stack == null) {
+ if (stack == null || launchHomeTaskNext) {
mStackSupervisor.resumeHomeActivity(null);
} else if (!mStackSupervisor.resumeTopActivitiesLocked(stack, null, null)) {
// If there was nothing to resume, and we are not already