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

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

Merge "Always refer to the latest TaskInfo" into main

parents c3a410d7 3ca8828c
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -4111,7 +4111,11 @@ class DesktopTasksController(

        if (DesktopExperienceFlags.ENABLE_DESKTOP_FIRST_TOP_FULLSCREEN_BUGFIX.isTrue) {
            val anyDeskActive = repository.isAnyDeskActive(targetDisplayId)
            val focusedTask = focusTransitionObserver.getFocusedTaskOnDisplay(targetDisplayId)
            // TODO(b/436462692) - Make `getFocusedTaskOnDisplay` always returns the latest TaskInfo
            val focusedTask =
                focusTransitionObserver.getFocusedTaskOnDisplay(targetDisplayId)?.let {
                    shellTaskOrganizer.getRunningTaskInfo(it.taskId)
                }
            val isFullscreenFocused = focusedTask?.isFullscreen == true
            val isNonHomeFocused = focusedTask?.activityType != ACTIVITY_TYPE_HOME
            logV(
+3 −1
Original line number Diff line number Diff line
@@ -269,7 +269,8 @@ public class FocusTransitionObserver {
    }

    /**
     * Gets the focused task on a specific display.
     * Gets the focused task on a specific display. Be careful when you access the properties of the
     * returned value which may be stale (b/436462692).
     *
     * @param displayId The ID of the display.
     * @return The {@link RunningTaskInfo} of the focused task on the given display,
@@ -277,6 +278,7 @@ public class FocusTransitionObserver {
     */
    @Nullable
    public RunningTaskInfo getFocusedTaskOnDisplay(int displayId) {
        // TODO(b/436462692) - Make `getFocusedTaskOnDisplay` always returns the latest TaskInfo
        return mFocusedTaskOnDisplay.get(displayId);
    }

+2 −2
Original line number Diff line number Diff line
@@ -5868,7 +5868,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase()
        val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!!
        tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM

        val focusedFullscreenTask = createFullscreenTask()
        val focusedFullscreenTask = setUpFullscreenTask()
        whenever(focusTransitionObserver.getFocusedTaskOnDisplay(any()))
            .thenReturn(focusedFullscreenTask)

@@ -6266,7 +6266,7 @@ class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase()
        val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!!
        tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM

        val focusedFullscreenTask = createFullscreenTask()
        val focusedFullscreenTask = setUpFullscreenTask()
        whenever(focusTransitionObserver.getFocusedTaskOnDisplay(any()))
            .thenReturn(focusedFullscreenTask)