Merge "Remove AppWindowTokens from exiting apps with task" into lmp-mr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
62a32ee1df
@@ -304,10 +304,11 @@ class AppWindowToken extends WindowToken {
|
||||
pw.print(prefix); pw.print("inPendingTransaction=");
|
||||
pw.println(inPendingTransaction);
|
||||
}
|
||||
if (startingData != null || removed || firstWindowDrawn) {
|
||||
if (startingData != null || removed || firstWindowDrawn || mDeferRemoval) {
|
||||
pw.print(prefix); pw.print("startingData="); pw.print(startingData);
|
||||
pw.print(" removed="); pw.print(removed);
|
||||
pw.print(" firstWindowDrawn="); pw.println(firstWindowDrawn);
|
||||
pw.print(" firstWindowDrawn="); pw.print(firstWindowDrawn);
|
||||
pw.print(" mDeferRemoval="); pw.println(mDeferRemoval);
|
||||
}
|
||||
if (startingWindow != null || startingView != null
|
||||
|| startingDisplayed || startingMoved) {
|
||||
|
||||
@@ -68,6 +68,6 @@ class Task {
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "{taskId=" + taskId + " appTokens=" + mAppTokens + "}";
|
||||
return "{taskId=" + taskId + " appTokens=" + mAppTokens + " mdr=" + mDeferRemoval + "}";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5200,8 +5200,17 @@ public class WindowManagerService extends IWindowManager.Stub
|
||||
if (DEBUG_STACK) Slog.i(TAG, "removeTask: removing taskId=" + taskId);
|
||||
EventLog.writeEvent(EventLogTags.WM_TASK_REMOVED, taskId, "removeTask");
|
||||
task.mDeferRemoval = false;
|
||||
task.mStack.removeTask(task);
|
||||
stack.removeTask(task);
|
||||
mTaskIdToTask.delete(task.taskId);
|
||||
|
||||
final ArrayList<AppWindowToken> exitingApps = stack.mExitingAppTokens;
|
||||
for (int appNdx = exitingApps.size() - 1; appNdx >= 0; --appNdx) {
|
||||
final AppWindowToken wtoken = exitingApps.get(appNdx);
|
||||
if (wtoken.groupId == taskId) {
|
||||
wtoken.mDeferRemoval = false;
|
||||
exitingApps.remove(appNdx);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void removeTask(int taskId) {
|
||||
|
||||
Reference in New Issue
Block a user