Merge "Consolidate TaskDisplayArea#addStack and TaskDisplayArea#addChild" into rvc-dev am: 53e927f890 am: 0cabba4645
Change-Id: I40ef7a2c7a1499319c689b83576e942949f3511d
This commit is contained in:
@@ -267,16 +267,14 @@ final class TaskDisplayArea extends DisplayArea<ActivityStack> {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
void addChild(ActivityStack stack, int position) {
|
void addChild(ActivityStack stack, int position) {
|
||||||
|
if (DEBUG_STACK) Slog.d(TAG_WM, "Set stack=" + stack + " on taskDisplayArea=" + this);
|
||||||
addStackReferenceIfNeeded(stack);
|
addStackReferenceIfNeeded(stack);
|
||||||
position = findPositionForStack(position, stack, true /* adding */);
|
position = findPositionForStack(position, stack, true /* adding */);
|
||||||
|
|
||||||
super.addChild(stack, position);
|
super.addChild(stack, position);
|
||||||
mAtmService.updateSleepIfNeededLocked();
|
mAtmService.updateSleepIfNeededLocked();
|
||||||
|
|
||||||
// The reparenting case is handled in WindowContainer.
|
positionStackAt(stack, position);
|
||||||
if (!stack.mReparenting) {
|
|
||||||
mDisplayContent.setLayoutNeeded();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -638,12 +636,6 @@ final class TaskDisplayArea extends DisplayArea<ActivityStack> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void addStack(ActivityStack stack, int position) {
|
|
||||||
if (DEBUG_STACK) Slog.d(TAG_WM, "Set stack=" + stack + " on taskDisplayArea=" + this);
|
|
||||||
addChild(stack, position);
|
|
||||||
positionStackAt(stack, position);
|
|
||||||
}
|
|
||||||
|
|
||||||
void onStackRemoved(ActivityStack stack) {
|
void onStackRemoved(ActivityStack stack) {
|
||||||
if (ActivityTaskManagerDebugConfig.DEBUG_STACK) {
|
if (ActivityTaskManagerDebugConfig.DEBUG_STACK) {
|
||||||
Slog.v(TAG_STACK, "removeStack: detaching " + stack + " from displayId="
|
Slog.v(TAG_STACK, "removeStack: detaching " + stack + " from displayId="
|
||||||
@@ -787,7 +779,7 @@ final class TaskDisplayArea extends DisplayArea<ActivityStack> {
|
|||||||
}
|
}
|
||||||
} else if (stack.getDisplayArea() != this || !stack.isRootTask()) {
|
} else if (stack.getDisplayArea() != this || !stack.isRootTask()) {
|
||||||
if (stack.getParent() == null) {
|
if (stack.getParent() == null) {
|
||||||
addStack(stack, position);
|
addChild(stack, position);
|
||||||
} else {
|
} else {
|
||||||
stack.reparent(this, onTop);
|
stack.reparent(this, onTop);
|
||||||
}
|
}
|
||||||
@@ -943,7 +935,7 @@ final class TaskDisplayArea extends DisplayArea<ActivityStack> {
|
|||||||
positionStackAtTop((ActivityStack) launchRootTask, false /* includingParents */);
|
positionStackAtTop((ActivityStack) launchRootTask, false /* includingParents */);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
addStack(stack, onTop ? POSITION_TOP : POSITION_BOTTOM);
|
addChild(stack, onTop ? POSITION_TOP : POSITION_BOTTOM);
|
||||||
stack.setWindowingMode(windowingMode, true /* creating */);
|
stack.setWindowingMode(windowingMode, true /* creating */);
|
||||||
}
|
}
|
||||||
return stack;
|
return stack;
|
||||||
|
|||||||
@@ -662,9 +662,11 @@ class WindowContainer<E extends WindowContainer> extends ConfigurationContainer<
|
|||||||
// position that takes into account the removed child (if the index of the
|
// position that takes into account the removed child (if the index of the
|
||||||
// child < position, then the position should be adjusted). We should consider
|
// child < position, then the position should be adjusted). We should consider
|
||||||
// doing this adjustment here and remove any adjustments in the callers.
|
// doing this adjustment here and remove any adjustments in the callers.
|
||||||
mChildren.remove(child);
|
if (mChildren.indexOf(child) != position) {
|
||||||
mChildren.add(position, child);
|
mChildren.remove(child);
|
||||||
onChildPositionChanged(child);
|
mChildren.add(position, child);
|
||||||
|
onChildPositionChanged(child);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1196,7 +1196,7 @@ public class ActivityStackTests extends ActivityTestsBase {
|
|||||||
mDefaultTaskDisplayArea.registerStackOrderChangedListener(listener);
|
mDefaultTaskDisplayArea.registerStackOrderChangedListener(listener);
|
||||||
try {
|
try {
|
||||||
mStack.mReparenting = true;
|
mStack.mReparenting = true;
|
||||||
mDefaultTaskDisplayArea.addStack(mStack, 0);
|
mDefaultTaskDisplayArea.addChild(mStack, 0);
|
||||||
} finally {
|
} finally {
|
||||||
mDefaultTaskDisplayArea.unregisterStackOrderChangedListener(listener);
|
mDefaultTaskDisplayArea.unregisterStackOrderChangedListener(listener);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user