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

Commit c8b0817d authored by Orhan Uysal's avatar Orhan Uysal Committed by Android (Google) Code Review
Browse files

Merge "Launch freeform activities in desktop mode" into main

parents f144ea5d dcb5ee59
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -906,7 +906,8 @@ class DesktopTasksController(
                    task.taskId
            )
            return WindowContainerTransaction().also { wct ->
                addMoveToFullscreenChanges(wct, task)
                bringDesktopAppsToFrontBeforeShowingNewTask(task.displayId, wct, task.taskId)
                wct.reorder(task.token, true)
            }
        }
        // Desktop Mode is showing and we're launching a new Task - we might need to minimize
+12 −10
Original line number Diff line number Diff line
@@ -1072,7 +1072,7 @@ class DesktopTasksControllerTest : ShellTestCase() {
    }

    @Test
    fun handleRequest_freeformTask_freeformNotVisible_returnSwitchToFullscreenWCT() {
    fun handleRequest_freeformTask_freeformNotVisible_reorderedToTop() {
        assumeTrue(ENABLE_SHELL_TRANSITIONS)

        val freeformTask1 = setUpFreeformTask()
@@ -1084,30 +1084,32 @@ class DesktopTasksControllerTest : ShellTestCase() {
                Binder(),
                createTransition(freeformTask2, type = TRANSIT_TO_FRONT)
            )
        assertThat(result?.changes?.get(freeformTask2.token.asBinder())?.windowingMode)
            .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN

        assertThat(result?.hierarchyOps?.size).isEqualTo(2)
        result!!.assertReorderAt(1, freeformTask2, toTop = true)
    }

    @Test
    fun handleRequest_freeformTask_noOtherTasks_returnSwitchToFullscreenWCT() {
    fun handleRequest_freeformTask_noOtherTasks_reorderedToTop() {
        assumeTrue(ENABLE_SHELL_TRANSITIONS)

        val task = createFreeformTask()
        val result = controller.handleRequest(Binder(), createTransition(task))
        assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode)
            .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN

        assertThat(result?.hierarchyOps?.size).isEqualTo(1)
        result!!.assertReorderAt(0, task, toTop = true)
    }

    @Test
    fun handleRequest_freeformTask_freeformOnOtherDisplayOnly_returnSwitchToFullscreenWCT() {
    fun handleRequest_freeformTask_freeformOnOtherDisplayOnly_reorderedToTop() {
        assumeTrue(ENABLE_SHELL_TRANSITIONS)

        val taskDefaultDisplay = createFreeformTask(displayId = DEFAULT_DISPLAY)
        createFreeformTask(displayId = SECOND_DISPLAY)
        val taskSecondDisplay = createFreeformTask(displayId = SECOND_DISPLAY)

        val result = controller.handleRequest(Binder(), createTransition(taskDefaultDisplay))
        assertThat(result?.changes?.get(taskDefaultDisplay.token.asBinder())?.windowingMode)
            .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN
        assertThat(result?.hierarchyOps?.size).isEqualTo(1)
        result!!.assertReorderAt(0, taskDefaultDisplay, toTop = true)
    }

    @Test