Merge "Remove task activities from LRU list when task is reparented."
This commit is contained in:
committed by
Android (Google) Code Review
commit
af4bb6864f
@@ -759,6 +759,12 @@ class ActivityStack<T extends StackWindowController> extends ConfigurationContai
|
||||
}
|
||||
}
|
||||
|
||||
final void removeActivitiesFromLRUListLocked(TaskRecord task) {
|
||||
for (ActivityRecord r : task.mActivities) {
|
||||
mLRUActivities.remove(r);
|
||||
}
|
||||
}
|
||||
|
||||
final boolean updateLRUListLocked(ActivityRecord r) {
|
||||
final boolean hadit = mLRUActivities.remove(r);
|
||||
mLRUActivities.add(r);
|
||||
@@ -4947,6 +4953,7 @@ class ActivityStack<T extends StackWindowController> extends ConfigurationContai
|
||||
}
|
||||
}
|
||||
mTaskHistory.remove(task);
|
||||
removeActivitiesFromLRUListLocked(task);
|
||||
updateTaskMovement(task, true);
|
||||
|
||||
if (mode == REMOVE_TASK_MODE_DESTROYING && task.mActivities.isEmpty()) {
|
||||
@@ -5114,6 +5121,7 @@ class ActivityStack<T extends StackWindowController> extends ConfigurationContai
|
||||
// Apps may depend on onResume()/onPause() being called in pairs.
|
||||
if (setResume) {
|
||||
mResumedActivity = r;
|
||||
updateLRUListLocked(r);
|
||||
}
|
||||
// If the activity was previously pausing, then ensure we transfer that as well
|
||||
if (setPause) {
|
||||
|
||||
@@ -3555,8 +3555,16 @@ public class ActivityStackSupervisor extends ConfigurationContainer implements D
|
||||
stackHeader.append(" mFullscreen=" + stack.mFullscreen);
|
||||
stackHeader.append("\n");
|
||||
stackHeader.append(" mBounds=" + stack.mBounds);
|
||||
printed |= stack.dumpActivitiesLocked(fd, pw, dumpAll, dumpClient, dumpPackage,
|
||||
needSep, stackHeader.toString());
|
||||
|
||||
final boolean printedStackHeader = stack.dumpActivitiesLocked(fd, pw, dumpAll,
|
||||
dumpClient, dumpPackage, needSep, stackHeader.toString());
|
||||
printed |= printedStackHeader;
|
||||
if (!printedStackHeader) {
|
||||
// Ensure we always dump the stack header even if there are no activities
|
||||
pw.println();
|
||||
pw.println(stackHeader);
|
||||
}
|
||||
|
||||
printed |= dumpHistoryList(fd, pw, stack.mLRUActivities, " ", "Run", false,
|
||||
!dumpAll, false, dumpPackage, true,
|
||||
" Running activities (most recent first):", null);
|
||||
|
||||
Reference in New Issue
Block a user