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

Commit a4229001 authored by Kazuki Takise's avatar Kazuki Takise Committed by Android (Google) Code Review
Browse files

Merge "Don't override PiP windowing mode in LPM" into main

parents c20dce1f 75700555
Loading
Loading
Loading
Loading
+8 −7
Original line number Original line Diff line number Diff line
@@ -303,15 +303,9 @@ class TaskLaunchParamsModifier implements LaunchParamsModifier {
        } else {
        } else {
            if (DEBUG) appendLog("non-freeform-task-display-area");
            if (DEBUG) appendLog("non-freeform-task-display-area");
        }
        }
        final boolean isUpdatingExistingTaskWindowingMode = task != null
                && task.getRequestedOverrideWindowingMode() != WINDOWING_MODE_UNDEFINED
                && launchMode != task.getRequestedOverrideWindowingMode();
        if (DEBUG && isUpdatingExistingTaskWindowingMode) {
            appendLog("updating-existing-task-windowing-mode");
        }
        // If launch mode matches display windowing mode, let it inherit from display.
        // If launch mode matches display windowing mode, let it inherit from display.
        outParams.mWindowingMode = launchMode == suggestedDisplayArea.getWindowingMode()
        outParams.mWindowingMode = launchMode == suggestedDisplayArea.getWindowingMode()
                && !isUpdatingExistingTaskWindowingMode
                && !shouldUpdateExistingTaskWindowingMode(task, launchMode)
                ? WINDOWING_MODE_UNDEFINED : launchMode;
                ? WINDOWING_MODE_UNDEFINED : launchMode;


        if (phase == PHASE_WINDOWING_MODE) {
        if (phase == PHASE_WINDOWING_MODE) {
@@ -403,6 +397,13 @@ class TaskLaunchParamsModifier implements LaunchParamsModifier {
        return RESULT_CONTINUE;
        return RESULT_CONTINUE;
    }
    }


    private boolean shouldUpdateExistingTaskWindowingMode(Task task, int launchMode) {
        return task != null
                && task.getRequestedOverrideWindowingMode() != WINDOWING_MODE_UNDEFINED
                && task.getRequestedOverrideWindowingMode() != WINDOWING_MODE_PINNED
                && launchMode != task.getRequestedOverrideWindowingMode();
    }

    private TaskDisplayArea getPreferredLaunchTaskDisplayArea(@Nullable Task task,
    private TaskDisplayArea getPreferredLaunchTaskDisplayArea(@Nullable Task task,
            @Nullable ActivityOptions options, @Nullable ActivityRecord source,
            @Nullable ActivityOptions options, @Nullable ActivityRecord source,
            @Nullable LaunchParams currentParams, @Nullable ActivityRecord activityRecord,
            @Nullable LaunchParams currentParams, @Nullable ActivityRecord activityRecord,