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

Commit 0dd1665a authored by Ben Murdoch's avatar Ben Murdoch Committed by Android (Google) Code Review
Browse files

Merge "Log visible task count in DesktopModeSessionTaskUpdate atom" into main

parents bb0348ec 628435d5
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -132,7 +132,8 @@ class DesktopModeEventLogger {
            sessionId,
            taskUpdate.minimizeReason?.reason ?: UNSET_MINIMIZE_REASON,
            taskUpdate.unminimizeReason?.reason ?: UNSET_UNMINIMIZE_REASON,

            /* visible_task_count */
            taskUpdate.visibleTaskCount
        )
    }

@@ -159,6 +160,7 @@ class DesktopModeEventLogger {
            val taskY: Int,
            val minimizeReason: MinimizeReason? = null,
            val unminimizeReason: UnminimizeReason? = null,
            val visibleTaskCount: Int,
        )

        // Default value used when the task was not minimized.
+9 −5
Original line number Diff line number Diff line
@@ -295,7 +295,8 @@ class DesktopModeLoggerTransitionObserver(
        postTransitionVisibleFreeformTasks: SparseArray<TaskInfo>
    ) {
        postTransitionVisibleFreeformTasks.forEach { taskId, taskInfo ->
            val currentTaskUpdate = buildTaskUpdateForTask(taskInfo)
            val currentTaskUpdate = buildTaskUpdateForTask(taskInfo,
                postTransitionVisibleFreeformTasks.size())
            val previousTaskInfo = preTransitionVisibleFreeformTasks[taskId]
            when {
                // new tasks added
@@ -309,7 +310,8 @@ class DesktopModeLoggerTransitionObserver(
                }
                // old tasks that were resized or repositioned
                // TODO(b/347935387): Log changes only once they are stable.
                buildTaskUpdateForTask(previousTaskInfo) != currentTaskUpdate ->
                buildTaskUpdateForTask(previousTaskInfo, postTransitionVisibleFreeformTasks.size())
                        != currentTaskUpdate ->
                            desktopModeEventLogger.logTaskInfoChanged(sessionId, currentTaskUpdate)
            }
        }
@@ -317,7 +319,8 @@ class DesktopModeLoggerTransitionObserver(
        // find old tasks that were removed
        preTransitionVisibleFreeformTasks.forEach { taskId, taskInfo ->
            if (!postTransitionVisibleFreeformTasks.containsKey(taskId)) {
                desktopModeEventLogger.logTaskRemoved(sessionId, buildTaskUpdateForTask(taskInfo))
                desktopModeEventLogger.logTaskRemoved(sessionId,
                    buildTaskUpdateForTask(taskInfo, postTransitionVisibleFreeformTasks.size()))
                Trace.setCounter(
                    Trace.TRACE_TAG_WINDOW_MANAGER,
                    VISIBLE_TASKS_COUNTER_NAME,
@@ -327,7 +330,7 @@ class DesktopModeLoggerTransitionObserver(
        }
    }

    private fun buildTaskUpdateForTask(taskInfo: TaskInfo): TaskUpdate {
    private fun buildTaskUpdateForTask(taskInfo: TaskInfo, visibleTasks: Int): TaskUpdate {
        val screenBounds = taskInfo.configuration.windowConfiguration.bounds
        val positionInParent = taskInfo.positionInParent
        return TaskUpdate(
@@ -337,6 +340,7 @@ class DesktopModeLoggerTransitionObserver(
            taskWidth = screenBounds.width(),
            taskX = positionInParent.x,
            taskY = positionInParent.y,
            visibleTaskCount = visibleTasks,
        )
    }

+19 −7
Original line number Diff line number Diff line
@@ -104,7 +104,9 @@ class DesktopModeEventLoggerTest {
                /* session_id */
                eq(SESSION_ID),
                eq(UNSET_MINIMIZE_REASON),
                eq(UNSET_UNMINIMIZE_REASON))
                eq(UNSET_UNMINIMIZE_REASON),
                /* visible_task_count */
                eq(TASK_COUNT))
        }
    }

@@ -131,7 +133,9 @@ class DesktopModeEventLoggerTest {
                /* session_id */
                eq(SESSION_ID),
                eq(UNSET_MINIMIZE_REASON),
                eq(UNSET_UNMINIMIZE_REASON))
                eq(UNSET_UNMINIMIZE_REASON),
                /* visible_task_count */
                eq(TASK_COUNT))
        }
    }

@@ -159,7 +163,9 @@ class DesktopModeEventLoggerTest {
                /* session_id */
                eq(SESSION_ID),
                eq(UNSET_MINIMIZE_REASON),
                eq(UNSET_UNMINIMIZE_REASON))
                eq(UNSET_UNMINIMIZE_REASON),
                /* visible_task_count */
                eq(TASK_COUNT))
        }
    }

@@ -190,7 +196,9 @@ class DesktopModeEventLoggerTest {
                /* minimize_reason */
                eq(MinimizeReason.TASK_LIMIT.reason),
                /* unminimize_reason */
                eq(UNSET_UNMINIMIZE_REASON))
                eq(UNSET_UNMINIMIZE_REASON),
                /* visible_task_count */
                eq(TASK_COUNT))
        }
    }

@@ -221,7 +229,9 @@ class DesktopModeEventLoggerTest {
                /* minimize_reason */
                eq(UNSET_MINIMIZE_REASON),
                /* unminimize_reason */
                eq(UnminimizeReason.TASKBAR_TAP.reason))
                eq(UnminimizeReason.TASKBAR_TAP.reason),
                /* visible_task_count */
                eq(TASK_COUNT))
        }
    }

@@ -233,15 +243,17 @@ class DesktopModeEventLoggerTest {
        private const val TASK_Y = 0
        private const val TASK_HEIGHT = 100
        private const val TASK_WIDTH = 100
        private const val TASK_COUNT = 1

        private val TASK_UPDATE = TaskUpdate(
            TASK_ID, TASK_UID, TASK_HEIGHT, TASK_WIDTH, TASK_X, TASK_Y
            TASK_ID, TASK_UID, TASK_HEIGHT, TASK_WIDTH, TASK_X, TASK_Y,
            visibleTaskCount = TASK_COUNT,
        )

        private fun createTaskUpdate(
            minimizeReason: MinimizeReason? = null,
            unminimizeReason: UnminimizeReason? = null,
        ) = TaskUpdate(TASK_ID, TASK_UID, TASK_HEIGHT, TASK_WIDTH, TASK_X, TASK_Y, minimizeReason,
            unminimizeReason)
            unminimizeReason, TASK_COUNT)
    }
}
 No newline at end of file
+41 −19
Original line number Diff line number Diff line
@@ -138,7 +138,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.APP_FREEFORM_INTENT, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.APP_FREEFORM_INTENT,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -152,7 +153,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.APP_HANDLE_DRAG, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.APP_HANDLE_DRAG,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -165,7 +167,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.APP_HANDLE_MENU_BUTTON, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.APP_HANDLE_MENU_BUTTON,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -178,7 +181,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.APP_FROM_OVERVIEW, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.APP_FROM_OVERVIEW,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -191,7 +195,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.KEYBOARD_SHORTCUT_ENTER, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.KEYBOARD_SHORTCUT_ENTER,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -201,7 +206,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -231,7 +237,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -261,7 +268,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -291,7 +299,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -324,7 +333,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.APP_FROM_OVERVIEW, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.APP_FROM_OVERVIEW,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -335,7 +345,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.UNKNOWN_ENTER, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.UNKNOWN_ENTER,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -345,7 +356,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    callOnTransitionReady(transitionInfo)

    verifyTaskAddedAndEnterLogging(EnterReason.SCREEN_ON, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.SCREEN_ON,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -522,7 +534,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {
    val transitionInfo2 = TransitionInfoBuilder(TRANSIT_NONE).build()
    callOnTransitionReady(transitionInfo2)

    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW, DEFAULT_TASK_UPDATE)
    verifyTaskAddedAndEnterLogging(EnterReason.OVERVIEW,
        DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1))
  }

  @Test
@@ -538,7 +551,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {
    callOnTransitionReady(transitionInfo)

    verify(desktopModeEventLogger, times(1))
        .logTaskAdded(eq(sessionId), eq(DEFAULT_TASK_UPDATE.copy(instanceId = 2)))
        .logTaskAdded(eq(sessionId),
            eq(DEFAULT_TASK_UPDATE.copy(instanceId = 2, visibleTaskCount = 2)))
    verify(desktopModeEventLogger, never()).logSessionEnter(any(), any())
  }

@@ -560,7 +574,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    verify(desktopModeEventLogger, times(1))
        .logTaskInfoChanged(
            eq(sessionId), eq(DEFAULT_TASK_UPDATE.copy(taskX = DEFAULT_TASK_X + 100)))
            eq(sessionId),
            eq(DEFAULT_TASK_UPDATE.copy(taskX = DEFAULT_TASK_X + 100, visibleTaskCount = 1)))
    verifyZeroInteractions(desktopModeEventLogger)
  }

@@ -589,7 +604,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {
            eq(sessionId),
            eq(
                DEFAULT_TASK_UPDATE.copy(
                    taskWidth = DEFAULT_TASK_WIDTH + 100, taskHeight = DEFAULT_TASK_HEIGHT - 100)))
                    taskWidth = DEFAULT_TASK_WIDTH + 100, taskHeight = DEFAULT_TASK_HEIGHT - 100,
                    visibleTaskCount = 1)))
    verifyZeroInteractions(desktopModeEventLogger)
  }

@@ -613,7 +629,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {

    verify(desktopModeEventLogger, times(1))
        .logTaskInfoChanged(
            eq(sessionId), eq(DEFAULT_TASK_UPDATE.copy(taskX = DEFAULT_TASK_X + 100)))
            eq(sessionId), eq(DEFAULT_TASK_UPDATE.copy(
                taskX = DEFAULT_TASK_X + 100, visibleTaskCount = 2)))
    verifyZeroInteractions(desktopModeEventLogger)

    // task 2 resize
@@ -637,7 +654,9 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {
                DEFAULT_TASK_UPDATE.copy(
                    instanceId = 2,
                    taskWidth = DEFAULT_TASK_WIDTH + 100,
                    taskHeight = DEFAULT_TASK_HEIGHT - 100)))
                    taskHeight = DEFAULT_TASK_HEIGHT - 100,
                    visibleTaskCount = 2)),
            )
    verifyZeroInteractions(desktopModeEventLogger)
  }

@@ -655,7 +674,8 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {
    callOnTransitionReady(transitionInfo)

    verify(desktopModeEventLogger, times(1))
        .logTaskRemoved(eq(sessionId), eq(DEFAULT_TASK_UPDATE.copy(instanceId = 2)))
        .logTaskRemoved(eq(sessionId), eq(DEFAULT_TASK_UPDATE.copy(
            instanceId = 2, visibleTaskCount = 1)))
    verify(desktopModeEventLogger, never()).logSessionExit(any(), any())
  }

@@ -694,6 +714,7 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {
    const val DEFAULT_TASK_WIDTH = 200
    const val DEFAULT_TASK_X = 30
    const val DEFAULT_TASK_Y = 70
    const val DEFAULT_VISIBLE_TASK_COUNT = 0
    val DEFAULT_TASK_UPDATE =
        TaskUpdate(
            DEFAULT_TASK_ID,
@@ -702,6 +723,7 @@ class DesktopModeLoggerTransitionObserverTest : ShellTestCase() {
            DEFAULT_TASK_WIDTH,
            DEFAULT_TASK_X,
            DEFAULT_TASK_Y,
            visibleTaskCount = DEFAULT_VISIBLE_TASK_COUNT,
        )

    fun createTaskInfo(