diff options
-rw-r--r-- | services/core/java/com/android/server/am/ActivityStackSupervisor.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/am/ActivityStackSupervisor.java b/services/core/java/com/android/server/am/ActivityStackSupervisor.java index c54a96d..f967aef 100644 --- a/services/core/java/com/android/server/am/ActivityStackSupervisor.java +++ b/services/core/java/com/android/server/am/ActivityStackSupervisor.java @@ -883,8 +883,18 @@ public final class ActivityStackSupervisor implements DisplayListener { void startHomeActivity(Intent intent, ActivityInfo aInfo, String reason) { moveHomeStackTaskToTop(HOME_ACTIVITY_TYPE, reason); - startActivityLocked(null, intent, null, aInfo, null, null, null, null, 0, 0, 0, null, - 0, 0, 0, null, false, null, null, null); + startActivityLocked(null /* caller */, intent, null /* resolvedType */, aInfo, + null /* voiceSession */, null /* voiceInteractor */, null /* resultTo */, + null /* resultWho */, 0 /* requestCode */, 0 /* callingPid */, 0 /* callingUid */, + null /* callingPackage */, 0 /* realCallingPid */, 0 /* realCallingUid */, + 0 /* startFlags */, null /* options */, false /* componentSpecified */, + null /* outActivity */, null /* container */, null /* inTask */); + if (inResumeTopActivity) { + // If we are in resume section already, home activity will be initialized, but not + // resumed (to avoid recursive resume) and will stay that way until something pokes it + // again. We need to schedule another resume. + scheduleResumeTopActivities(); + } } final int startActivityMayWait(IApplicationThread caller, int callingUid, |