Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4e30d5b5 authored by Vinit Nayak's avatar Vinit Nayak
Browse files

Add displayId to StageTaskListener protologs

Test: Compiles
Flag: EXEMPT logging
Bug: 438519653
Change-Id: I5377b0bb66b86ef2fe0d758363a70f9dbebd68b4
parent 57f25dbf
Loading
Loading
Loading
Loading
+17 −10
Original line number Diff line number Diff line
@@ -735,8 +735,8 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,

    boolean moveToStage(RunningTaskInfo task, @SplitPosition int stagePosition,
            WindowContainerTransaction wct) {
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "moveToStage: task=%d position=%d", task.taskId,
                stagePosition);
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "moveToStage: task=%d position=%d displayId=%d",
                task.taskId, stagePosition, task.displayId);
        // TODO(b/349828130) currently pass in index_undefined until we can revisit these
        //  specific cases in the future. Only focusing on parity with starting intent/task
        prepareEnterSplitScreen(wct, task, stagePosition, false /* resizeAnim */,
@@ -2034,8 +2034,9 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
    void prepareEnterSplitScreen(WindowContainerTransaction wct,
            @Nullable RunningTaskInfo taskInfo, @SplitPosition int startPosition,
            boolean resizeAnim, @SplitIndex int index) {
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareEnterSplitScreen: position=%d resize=%b",
                startPosition, resizeAnim);
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareEnterSplitScreen: position=%d resize=%b "
                        + "displayId=%d",
                startPosition, resizeAnim, taskInfo != null ? taskInfo.displayId : -1);
        onSplitScreenEnter();
        // Preemptively reset the reparenting behavior if we know that we are entering, as starting
        // split tasks with activity trampolines can inadvertently trigger the task to be
@@ -2054,9 +2055,12 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
    private void prepareBringSplit(WindowContainerTransaction wct,
            @Nullable RunningTaskInfo taskInfo, @SplitPosition int startPosition,
            boolean resizeAnim) {
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareBringSplit: task=%d isSplitVisible=%b",
                taskInfo != null ? taskInfo.taskId : -1, isSplitScreenVisible());
        if (taskInfo != null) {
        boolean taskInfoNotNull = taskInfo != null;
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareBringSplit: task=%d isSplitVisible=%b "
                        + "displayId=%d",
                taskInfoNotNull ? taskInfo.taskId : -1, isSplitScreenVisible(),
                taskInfoNotNull ? taskInfo.displayId : -1);
        if (taskInfoNotNull) {
            wct.startTask(taskInfo.taskId,
                    resolveStartStage(STAGE_TYPE_UNDEFINED, startPosition, null, wct));
        }
@@ -2084,12 +2088,15 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
    private void prepareActiveSplit(WindowContainerTransaction wct,
            @Nullable RunningTaskInfo taskInfo, @SplitPosition int startPosition,
            boolean resizeAnim, @SplitIndex int index) {
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareActiveSplit: task=%d isSplitVisible=%b",
                taskInfo != null ? taskInfo.taskId : -1, isSplitScreenVisible());
        boolean taskInfoNotNull = taskInfo != null;
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareActiveSplit: task=%d isSplitVisible=%b "
                        + "displayId=%d",
                taskInfoNotNull ? taskInfo.taskId : -1, isSplitScreenVisible(),
                taskInfoNotNull ? taskInfo.displayId : -1);
        // We handle split visibility itself on shell transition, but sometimes we didn't
        // reset it correctly after dismiss by some reason, so just set invisible before active.
        setSplitsVisible(false);
        if (taskInfo != null) {
        if (taskInfoNotNull) {
            setSideStagePosition(startPosition, wct);
            mSideStage.addTask(taskInfo, wct);
        }
+10 −10
Original line number Diff line number Diff line
@@ -252,10 +252,10 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener {
    @CallSuper
    public void onTaskAppeared(ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash) {
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskAppeared: taskId=%d taskParent=%d rootTask=%d "
                        + "stageId=%s taskActivity=%s",
                        + "stageId=%s taskActivity=%s displayId=%d",
                taskInfo.taskId, taskInfo.parentTaskId,
                mRootTaskInfo != null ? mRootTaskInfo.taskId : -1,
                stageTypeToString(mId), taskInfo.baseActivity);
                stageTypeToString(mId), taskInfo.baseActivity, taskInfo.displayId);
        if (mRootTaskInfo == null) {
            mRootLeash = leash;
            mRootTaskInfo = taskInfo;
@@ -286,8 +286,8 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener {
    @CallSuper
    public void onTaskInfoChanged(ActivityManager.RunningTaskInfo taskInfo) {
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskInfoChanged: taskId=%d taskAct=%s "
                        + "stageId=%s",
                taskInfo.taskId, taskInfo.baseActivity, stageTypeToString(mId));
                        + "stageId=%s displayId=%d",
                taskInfo.taskId, taskInfo.baseActivity, stageTypeToString(mId), taskInfo.displayId);
        mWindowDecorViewModel.ifPresent(viewModel -> viewModel.onTaskInfoChanged(taskInfo));
        if (mRootTaskInfo.taskId == taskInfo.taskId) {
            mRootTaskInfo = taskInfo;
@@ -297,8 +297,8 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener {
                    || !ArrayUtils.contains(CONTROLLED_WINDOWING_MODES_WHEN_ACTIVE,
                    taskInfo.getWindowingMode())) {
                ProtoLog.d(WM_SHELL_SPLIT_SCREEN,
                        "onTaskInfoChanged: task=%d no longer supports multiwindow",
                        taskInfo.taskId);
                        "onTaskInfoChanged: task=%d no longer supports multiwindow on display=%d",
                        taskInfo.taskId, taskInfo.displayId);
                // Leave split screen if the task no longer supports multi window or have
                // uncontrolled task.
                mCallbacks.onNoLongerSupportMultiWindow(this, taskInfo);
@@ -316,8 +316,8 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener {
    @Override
    @CallSuper
    public void onTaskVanished(ActivityManager.RunningTaskInfo taskInfo) {
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskVanished: task=%d stageId=%s",
                taskInfo.taskId, stageTypeToString(mId));
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskVanished: task=%d stageId=%s displayId=%d",
                taskInfo.taskId, stageTypeToString(mId), taskInfo.displayId);
        final int taskId = taskInfo.taskId;
        mWindowDecorViewModel.ifPresent(vm -> vm.onTaskVanished(taskInfo));
        if (mRootTaskInfo.taskId == taskId) {
@@ -478,8 +478,8 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener {

    private void evictChild(@NonNull WindowContainerTransaction wct, @NonNull TaskInfo taskInfo,
            @NonNull String reason) {
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Evict child: task=%d reason=%s", taskInfo.taskId,
                reason);
        ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Evict child: task=%d reason=%s displayId=%d",
                taskInfo.taskId, reason, taskInfo.displayId);
        // We are reparenting the task, but not removing the task from mChildrenTaskInfo, so to
        // prevent this task from being considered as a top task for the roots, we need to override
        // the visibility of the soon-to-be-hidden task