Loading libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java +1 −3 Original line number Original line Diff line number Diff line Loading @@ -599,9 +599,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, if (Transitions.ENABLE_SHELL_TRANSITIONS) { if (Transitions.ENABLE_SHELL_TRANSITIONS) { if (requestEnterSplit && mSplitScreenOptional.isPresent()) { if (requestEnterSplit && mSplitScreenOptional.isPresent()) { wct.setWindowingMode(mToken, WINDOWING_MODE_UNDEFINED); wct.setWindowingMode(mToken, WINDOWING_MODE_UNDEFINED); mSplitScreenOptional.get().prepareEnterSplitScreen(wct, mTaskInfo, mSplitScreenOptional.get().onPipExpandToSplit(wct, mTaskInfo); isPipToTopLeft() ? SPLIT_POSITION_TOP_OR_LEFT : SPLIT_POSITION_BOTTOM_OR_RIGHT); mPipTransitionController.startExitTransition( mPipTransitionController.startExitTransition( TRANSIT_EXIT_PIP_TO_SPLIT, wct, destinationBounds); TRANSIT_EXIT_PIP_TO_SPLIT, wct, destinationBounds); return; return; Loading libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenController.java +11 −0 Original line number Original line Diff line number Diff line Loading @@ -451,6 +451,17 @@ public class SplitScreenController implements DragAndDropPolicy.Starter, mStageCoordinator.finishEnterSplitScreen(finishT); mStageCoordinator.finishEnterSplitScreen(finishT); } } /** * Performs previous child eviction and such to prepare for the pip task expending into one of * the split stages * * @param taskInfo TaskInfo of the pip task */ public void onPipExpandToSplit(WindowContainerTransaction wct, ActivityManager.RunningTaskInfo taskInfo) { mStageCoordinator.onPipExpandToSplit(wct, taskInfo); } /** /** * Doing necessary window transaction for other transition handler need to exit split in * Doing necessary window transaction for other transition handler need to exit split in * transition. * transition. Loading libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java +19 −0 Original line number Original line Diff line number Diff line Loading @@ -2982,6 +2982,25 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } } /** * Performs previous child eviction and such to prepare for the pip task expending into one of * the split stages * * @param taskInfo TaskInfo of the pip task */ public void onPipExpandToSplit(WindowContainerTransaction wct, ActivityManager.RunningTaskInfo taskInfo) { prepareEnterSplitScreen(wct, taskInfo, getActivateSplitPosition(taskInfo), false /*resizeAnim*/); if (!isSplitScreenVisible() || mSplitRequest == null) { return; } boolean replacingMainStage = getMainStagePosition() == mSplitRequest.mActivatePosition; (replacingMainStage ? mMainStage : mSideStage).evictOtherChildren(wct, taskInfo.taskId); } boolean isLaunchToSplit(TaskInfo taskInfo) { boolean isLaunchToSplit(TaskInfo taskInfo) { return getActivateSplitPosition(taskInfo) != SPLIT_POSITION_UNDEFINED; return getActivateSplitPosition(taskInfo) != SPLIT_POSITION_UNDEFINED; } } Loading Loading
libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTaskOrganizer.java +1 −3 Original line number Original line Diff line number Diff line Loading @@ -599,9 +599,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, if (Transitions.ENABLE_SHELL_TRANSITIONS) { if (Transitions.ENABLE_SHELL_TRANSITIONS) { if (requestEnterSplit && mSplitScreenOptional.isPresent()) { if (requestEnterSplit && mSplitScreenOptional.isPresent()) { wct.setWindowingMode(mToken, WINDOWING_MODE_UNDEFINED); wct.setWindowingMode(mToken, WINDOWING_MODE_UNDEFINED); mSplitScreenOptional.get().prepareEnterSplitScreen(wct, mTaskInfo, mSplitScreenOptional.get().onPipExpandToSplit(wct, mTaskInfo); isPipToTopLeft() ? SPLIT_POSITION_TOP_OR_LEFT : SPLIT_POSITION_BOTTOM_OR_RIGHT); mPipTransitionController.startExitTransition( mPipTransitionController.startExitTransition( TRANSIT_EXIT_PIP_TO_SPLIT, wct, destinationBounds); TRANSIT_EXIT_PIP_TO_SPLIT, wct, destinationBounds); return; return; Loading
libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenController.java +11 −0 Original line number Original line Diff line number Diff line Loading @@ -451,6 +451,17 @@ public class SplitScreenController implements DragAndDropPolicy.Starter, mStageCoordinator.finishEnterSplitScreen(finishT); mStageCoordinator.finishEnterSplitScreen(finishT); } } /** * Performs previous child eviction and such to prepare for the pip task expending into one of * the split stages * * @param taskInfo TaskInfo of the pip task */ public void onPipExpandToSplit(WindowContainerTransaction wct, ActivityManager.RunningTaskInfo taskInfo) { mStageCoordinator.onPipExpandToSplit(wct, taskInfo); } /** /** * Doing necessary window transaction for other transition handler need to exit split in * Doing necessary window transaction for other transition handler need to exit split in * transition. * transition. Loading
libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java +19 −0 Original line number Original line Diff line number Diff line Loading @@ -2982,6 +2982,25 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } } /** * Performs previous child eviction and such to prepare for the pip task expending into one of * the split stages * * @param taskInfo TaskInfo of the pip task */ public void onPipExpandToSplit(WindowContainerTransaction wct, ActivityManager.RunningTaskInfo taskInfo) { prepareEnterSplitScreen(wct, taskInfo, getActivateSplitPosition(taskInfo), false /*resizeAnim*/); if (!isSplitScreenVisible() || mSplitRequest == null) { return; } boolean replacingMainStage = getMainStagePosition() == mSplitRequest.mActivatePosition; (replacingMainStage ? mMainStage : mSideStage).evictOtherChildren(wct, taskInfo.taskId); } boolean isLaunchToSplit(TaskInfo taskInfo) { boolean isLaunchToSplit(TaskInfo taskInfo) { return getActivateSplitPosition(taskInfo) != SPLIT_POSITION_UNDEFINED; return getActivateSplitPosition(taskInfo) != SPLIT_POSITION_UNDEFINED; } } Loading