summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Dianne Hackborn <hackbod@google.com> 2010-12-21 19:07:38 -0800
committer Android (Google) Code Review <android-gerrit@google.com> 2010-12-21 19:07:38 -0800
commited2e45b32faf36e2434460d22304e9bf28a9a40c (patch)
treee2b458b84f5b4d6e74ef3bc6e722381a6906ee36
parent502f695dd1a45406ba3f96d17cfc163c27eb87b9 (diff)
parent88819b276b8a91943e7ff6f0509a87307562b30f (diff)
Merge "Rework how recent tasks are added."
-rw-r--r--services/java/com/android/server/am/ActivityStack.java17
1 files changed, 6 insertions, 11 deletions
diff --git a/services/java/com/android/server/am/ActivityStack.java b/services/java/com/android/server/am/ActivityStack.java
index 516dfa213dcf..eee9f7e56ca7 100644
--- a/services/java/com/android/server/am/ActivityStack.java
+++ b/services/java/com/android/server/am/ActivityStack.java
@@ -572,6 +572,9 @@ public class ActivityStack {
r.stopped = false;
mResumedActivity = r;
r.task.touchActiveTime();
+ if (mMainStack) {
+ mService.addRecentTaskLocked(r.task);
+ }
completeResumeLocked(r);
pauseIfSleepingLocked();
} else {
@@ -1249,6 +1252,9 @@ public class ActivityStack {
next.state = ActivityState.RESUMED;
mResumedActivity = next;
next.task.touchActiveTime();
+ if (mMainStack) {
+ mService.addRecentTaskLocked(next.task);
+ }
mService.updateLruProcessLocked(next.app, true, true);
updateLRUListLocked(next);
@@ -1638,9 +1644,6 @@ public class ActivityStack {
taskTopI = -1;
}
replyChainEnd = -1;
- if (mMainStack) {
- mService.addRecentTaskLocked(target.task);
- }
} else if (forceReset || finishOnTaskLaunch
|| clearWhenTaskReset) {
// If the activity should just be removed -- either
@@ -2409,9 +2412,6 @@ public class ActivityStack {
r.task = reuseTask;
}
newTask = true;
- if (mMainStack) {
- mService.addRecentTaskLocked(r.task);
- }
moveHomeToFrontFromLaunchLocked(launchFlags);
} else if (sourceRecord != null) {
@@ -3472,17 +3472,12 @@ public class ActivityStack {
ActivityRecord r = (ActivityRecord)mHistory.get(pos);
if (localLOGV) Slog.v(
TAG, "At " + pos + " ckp " + r.task + ": " + r);
- boolean first = true;
if (r.task.taskId == task) {
if (localLOGV) Slog.v(TAG, "Removing and adding at " + top);
mHistory.remove(pos);
mHistory.add(top, r);
moved.add(0, r);
top--;
- if (first && mMainStack) {
- mService.addRecentTaskLocked(r.task);
- first = false;
- }
}
pos--;
}