Merge "Exclude the ActivityStack when processing the reset of a task"
This commit is contained in:
committed by
Android (Google) Code Review
commit
0bff2b6695
@@ -67,7 +67,7 @@ class ResetTargetTaskHelper {
|
||||
|
||||
final PooledConsumer c = PooledLambda.obtainConsumer(
|
||||
ResetTargetTaskHelper::processTask, this, PooledLambda.__(Task.class));
|
||||
targetTask.mWmService.mRoot.forAllTasks(c);
|
||||
targetTask.mWmService.mRoot.forAllTasks(c, true /*traverseTopToBottom*/, mTargetStack);
|
||||
c.recycle();
|
||||
|
||||
processPendingReparentActivities();
|
||||
|
||||
@@ -3070,17 +3070,11 @@ class Task extends WindowContainer<WindowContainer> {
|
||||
return matchParentBounds();
|
||||
}
|
||||
|
||||
@Override
|
||||
void forAllTasks(Consumer<Task> callback, boolean traverseTopToBottom, Task excludedTask) {
|
||||
if (traverseTopToBottom) {
|
||||
super.forAllTasks(callback, traverseTopToBottom);
|
||||
if (excludedTask != this) {
|
||||
callback.accept(this);
|
||||
}
|
||||
} else {
|
||||
super.forAllTasks(callback, traverseTopToBottom);
|
||||
if (excludedTask != this) {
|
||||
callback.accept(this);
|
||||
}
|
||||
super.forAllTasks(callback, traverseTopToBottom, excludedTask);
|
||||
if (excludedTask != this) {
|
||||
callback.accept(this);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1425,6 +1425,19 @@ class WindowContainer<E extends WindowContainer> extends ConfigurationContainer<
|
||||
}
|
||||
}
|
||||
|
||||
void forAllTasks(Consumer<Task> callback, boolean traverseTopToBottom, Task excludedTask) {
|
||||
final int count = mChildren.size();
|
||||
if (traverseTopToBottom) {
|
||||
for (int i = count - 1; i >= 0; --i) {
|
||||
mChildren.get(i).forAllTasks(callback, traverseTopToBottom, excludedTask);
|
||||
}
|
||||
} else {
|
||||
for (int i = 0; i < count; i++) {
|
||||
mChildren.get(i).forAllTasks(callback, traverseTopToBottom, excludedTask);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Task getTaskAbove(Task t) {
|
||||
return getTask(
|
||||
(above) -> true, t, false /*includeBoundary*/, false /*traverseTopToBottom*/);
|
||||
|
||||
Reference in New Issue
Block a user