Fix side stage cannot be focused
When split active by drag drop, the active point is onStageHasChildrenChanged callback but we don't reorder side stage to top then make it cannot be focused. Add reorder root to top for fixing. Fix: 204510713 Test: manual Test: pass existing tests Change-Id: I553a57250c302ff435a35c9a10599fc375e48248
This commit is contained in:
@@ -45,6 +45,11 @@ class SideStage extends StageTaskListener {
|
||||
stageTaskUnfoldController);
|
||||
}
|
||||
|
||||
void moveToTop(Rect rootBounds, WindowContainerTransaction wct) {
|
||||
final WindowContainerToken rootToken = mRootTaskInfo.token;
|
||||
wct.setBounds(rootToken, rootBounds).reorder(rootToken, true /* onTop */);
|
||||
}
|
||||
|
||||
void addTask(ActivityManager.RunningTaskInfo task, Rect rootBounds,
|
||||
WindowContainerTransaction wct) {
|
||||
final WindowContainerToken rootToken = mRootTaskInfo.token;
|
||||
|
||||
@@ -758,7 +758,7 @@ class StageCoordinator implements SplitLayout.SplitLayoutHandler,
|
||||
final WindowContainerTransaction wct = new WindowContainerTransaction();
|
||||
// Make sure the main stage is active.
|
||||
mMainStage.activate(getMainStageBounds(), wct, true /* reparent */);
|
||||
mSideStage.setBounds(getSideStageBounds(), wct);
|
||||
mSideStage.moveToTop(getSideStageBounds(), wct);
|
||||
mTaskOrganizer.applyTransaction(wct);
|
||||
}
|
||||
if (!mLogger.hasStartedSession() && mMainStageListener.mHasChildren
|
||||
|
||||
Reference in New Issue
Block a user