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

Commit bd30e4b2 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Fix tests on resolving freeform launch" into main

parents 0b993fce ef441c6f
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -101,6 +101,7 @@ class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
                + " task-display-area-windowing-mode=" + suggestedDisplayArea.getWindowingMode()
                + " suggested-display-area=" + suggestedDisplayArea);

        boolean hasLaunchWindowingMode = false;
        final boolean inDesktopMode = suggestedDisplayArea.inFreeformWindowingMode()
                || suggestedDisplayArea.getTopMostVisibleFreeformActivity() != null;
        if (DesktopExperienceFlags.ENABLE_FREEFORM_DISPLAY_LAUNCH_PARAMS.isTrue() && task == null
@@ -108,11 +109,10 @@ class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
                    || inDesktopMode)) {
            if (options != null) {
                final int windowingMode = options.getLaunchWindowingMode();
                if (windowingMode == WINDOWING_MODE_UNDEFINED
                        || windowingMode == WINDOWING_MODE_FREEFORM) {
                if (windowingMode == WINDOWING_MODE_FREEFORM) {
                    // Launching freeform in desktop but not ready to resolve bounds since task is
                    // null, return RESULT_DONE to prevent other modifiers from setting bounds.
                    outParams.mWindowingMode = options.getLaunchWindowingMode();
                    outParams.mWindowingMode = windowingMode;
                    appendLog("launch-freeform");
                    return RESULT_DONE;
                }
@@ -165,6 +165,7 @@ class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
                outParams.mWindowingMode = sourceTask.getWindowingMode();
                appendLog("inherit-from-source=" + outParams.mWindowingMode);
            }
            hasLaunchWindowingMode = true;
        }

        if (phase == PHASE_WINDOWING_MODE) {
@@ -217,7 +218,8 @@ class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
            appendLog("inherit-options=" + options.getLaunchWindowingMode());
            return RESULT_DONE;
        }
        if (DesktopExperienceFlags.ENABLE_FREEFORM_DISPLAY_LAUNCH_PARAMS.isTrue()) {
        if (DesktopExperienceFlags.ENABLE_FREEFORM_DISPLAY_LAUNCH_PARAMS.isTrue()
                && hasLaunchWindowingMode) {
            return RESULT_DONE;
        }
        return RESULT_CONTINUE;
+3 −2
Original line number Diff line number Diff line
@@ -1572,7 +1572,8 @@ public class DesktopModeLaunchParamsModifierTests extends

    @Test
    @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE,
            Flags.FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX})
            Flags.FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX,
            Flags.FLAG_ENABLE_FREEFORM_DISPLAY_LAUNCH_PARAMS})
    public void testFreeformWindowingModeAppliedIfSourceTaskExists() {
        setupDesktopModeLaunchParamsModifier();

@@ -1583,7 +1584,7 @@ public class DesktopModeLaunchParamsModifierTests extends
        final ActivityRecord sourceActivity = new ActivityBuilder(task.mAtmService)
                .setTask(sourceTask).build();

        assertEquals(RESULT_CONTINUE, new CalculateRequestBuilder().setTask(task)
        assertEquals(RESULT_DONE, new CalculateRequestBuilder().setTask(task)
                .setSource(sourceActivity).calculate());
        assertEquals(WINDOWING_MODE_FREEFORM, mResult.mWindowingMode);
    }