Merge "Use expression functions when appropriate" into main
diff --git a/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeTransitionSource.kt b/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeTransitionSource.kt
index d15fbed..23498de 100644
--- a/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeTransitionSource.kt
+++ b/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeTransitionSource.kt
@@ -32,9 +32,7 @@
     /** Transitions with source unknown. */
     UNKNOWN;
 
-    override fun describeContents(): Int {
-        return 0
-    }
+    override fun describeContents(): Int = 0
 
     override fun writeToParcel(dest: Parcel, flags: Int) {
         dest.writeString(name)
@@ -44,9 +42,8 @@
         @JvmField
         val CREATOR =
             object : Parcelable.Creator<DesktopModeTransitionSource> {
-                override fun createFromParcel(parcel: Parcel): DesktopModeTransitionSource {
-                    return parcel.readString()?.let { valueOf(it) } ?: UNKNOWN
-                }
+                override fun createFromParcel(parcel: Parcel): DesktopModeTransitionSource =
+                    parcel.readString()?.let { valueOf(it) } ?: UNKNOWN
 
                 override fun newArray(size: Int) = arrayOfNulls<DesktopModeTransitionSource>(size)
             }
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeDragAndDropTransitionHandler.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeDragAndDropTransitionHandler.kt
index ca02c72..f6fd967 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeDragAndDropTransitionHandler.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeDragAndDropTransitionHandler.kt
@@ -93,9 +93,8 @@
         return matchingChanges.first()
     }
 
-    private fun isValidTaskChange(change: TransitionInfo.Change): Boolean {
-        return change.taskInfo != null && change.taskInfo?.taskId != -1
-    }
+    private fun isValidTaskChange(change: TransitionInfo.Change): Boolean =
+        change.taskInfo != null && change.taskInfo?.taskId != -1
 
     override fun handleRequest(
         transition: IBinder,
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserver.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserver.kt
index e975b58..c09504e 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserver.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserver.kt
@@ -434,18 +434,14 @@
         visibleFreeformTaskInfos.set(taskInfo.taskId, taskInfo)
     }
 
-    private fun TransitionInfo.Change.requireTaskInfo(): RunningTaskInfo {
-        return this.taskInfo ?: throw IllegalStateException("Expected TaskInfo in the Change")
-    }
+    private fun TransitionInfo.Change.requireTaskInfo(): RunningTaskInfo =
+        this.taskInfo ?: throw IllegalStateException("Expected TaskInfo in the Change")
 
-    private fun TaskInfo.isFreeformWindow(): Boolean {
-        return this.windowingMode == WINDOWING_MODE_FREEFORM
-    }
+    private fun TaskInfo.isFreeformWindow(): Boolean = this.windowingMode == WINDOWING_MODE_FREEFORM
 
-    private fun TransitionInfo.isExitToRecentsTransition(): Boolean {
-        return this.type == WindowManager.TRANSIT_TO_FRONT &&
+    private fun TransitionInfo.isExitToRecentsTransition(): Boolean =
+        this.type == WindowManager.TRANSIT_TO_FRONT &&
             this.flags == WindowManager.TRANSIT_FLAG_IS_RECENTS
-    }
 
     companion object {
         @VisibleForTesting const val VISIBLE_TASKS_COUNTER_NAME = "desktop_mode_visible_tasks"
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt
index dba8c93..cdfa14b 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt
@@ -24,8 +24,8 @@
 class DesktopModeShellCommandHandler(private val controller: DesktopTasksController) :
     ShellCommandHandler.ShellCommandActionHandler {
 
-    override fun onShellCommand(args: Array<String>, pw: PrintWriter): Boolean {
-        return when (args[0]) {
+    override fun onShellCommand(args: Array<String>, pw: PrintWriter): Boolean =
+        when (args[0]) {
             "moveToDesktop" -> {
                 if (!runMoveToDesktop(args, pw)) {
                     pw.println("Task not found. Please enter a valid taskId.")
@@ -47,7 +47,6 @@
                 false
             }
         }
-    }
 
     private fun runMoveToDesktop(args: Array<String>, pw: PrintWriter): Boolean {
         if (args.size < 2) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTaskPosition.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTaskPosition.kt
index 848d80f..f29301d 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTaskPosition.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTaskPosition.kt
@@ -41,49 +41,35 @@
             return Point(x, y.toInt())
         }
 
-        override fun next(): DesktopTaskPosition {
-            return BottomRight
-        }
+        override fun next(): DesktopTaskPosition = BottomRight
     }
 
     data object BottomRight : DesktopTaskPosition() {
-        override fun getTopLeftCoordinates(frame: Rect, window: Rect): Point {
-            return Point(frame.right - window.width(), frame.bottom - window.height())
-        }
+        override fun getTopLeftCoordinates(frame: Rect, window: Rect): Point =
+            Point(frame.right - window.width(), frame.bottom - window.height())
 
-        override fun next(): DesktopTaskPosition {
-            return TopLeft
-        }
+        override fun next(): DesktopTaskPosition = TopLeft
     }
 
     data object TopLeft : DesktopTaskPosition() {
-        override fun getTopLeftCoordinates(frame: Rect, window: Rect): Point {
-            return Point(frame.left, frame.top)
-        }
+        override fun getTopLeftCoordinates(frame: Rect, window: Rect): Point =
+            Point(frame.left, frame.top)
 
-        override fun next(): DesktopTaskPosition {
-            return BottomLeft
-        }
+        override fun next(): DesktopTaskPosition = BottomLeft
     }
 
     data object BottomLeft : DesktopTaskPosition() {
-        override fun getTopLeftCoordinates(frame: Rect, window: Rect): Point {
-            return Point(frame.left, frame.bottom - window.height())
-        }
+        override fun getTopLeftCoordinates(frame: Rect, window: Rect): Point =
+            Point(frame.left, frame.bottom - window.height())
 
-        override fun next(): DesktopTaskPosition {
-            return TopRight
-        }
+        override fun next(): DesktopTaskPosition = TopRight
     }
 
     data object TopRight : DesktopTaskPosition() {
-        override fun getTopLeftCoordinates(frame: Rect, window: Rect): Point {
-            return Point(frame.right - window.width(), frame.top)
-        }
+        override fun getTopLeftCoordinates(frame: Rect, window: Rect): Point =
+            Point(frame.right - window.width(), frame.top)
 
-        override fun next(): DesktopTaskPosition {
-            return Center
-        }
+        override fun next(): DesktopTaskPosition = Center
     }
 
     /**
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt
index 6013648..73d1527 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt
@@ -1470,13 +1470,9 @@
         }
     }
 
-    override fun getContext(): Context {
-        return context
-    }
+    override fun getContext(): Context = context
 
-    override fun getRemoteCallExecutor(): ShellExecutor {
-        return mainExecutor
-    }
+    override fun getRemoteCallExecutor(): ShellExecutor = mainExecutor
 
     override fun startAnimation(
         transition: IBinder,
@@ -1662,11 +1658,10 @@
         DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODALS_POLICY.isTrue() &&
             isTopActivityExemptFromDesktopWindowing(context, task)
 
-    private fun shouldHandleTaskClosing(request: TransitionRequestInfo): Boolean {
-        return ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY.isTrue() &&
+    private fun shouldHandleTaskClosing(request: TransitionRequestInfo): Boolean =
+        ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY.isTrue() &&
             TransitionUtil.isClosingType(request.type) &&
             request.triggerTask != null
-    }
 
     /** Open an existing instance of an app. */
     fun openInstance(callingTask: RunningTaskInfo, requestedTaskId: Int) {
@@ -2185,11 +2180,10 @@
         getFocusedFreeformTask(displayId)?.let { requestSplit(it, leftOrTop) }
     }
 
-    private fun getFocusedFreeformTask(displayId: Int): RunningTaskInfo? {
-        return shellTaskOrganizer.getRunningTasks(displayId).find { taskInfo ->
+    private fun getFocusedFreeformTask(displayId: Int): RunningTaskInfo? =
+        shellTaskOrganizer.getRunningTasks(displayId).find { taskInfo ->
             taskInfo.isFocused && taskInfo.windowingMode == WINDOWING_MODE_FREEFORM
         }
-    }
 
     /**
      * Requests a task be transitioned from desktop to split select. Applies needed windowing
@@ -2237,14 +2231,10 @@
         }
     }
 
-    private fun getDefaultDensityDpi(): Int {
-        return context.resources.displayMetrics.densityDpi
-    }
+    private fun getDefaultDensityDpi(): Int = context.resources.displayMetrics.densityDpi
 
     /** Creates a new instance of the external interface to pass to another process. */
-    private fun createExternalInterface(): ExternalInterfaceBinder {
-        return IDesktopModeImpl(this)
-    }
+    private fun createExternalInterface(): ExternalInterfaceBinder = IDesktopModeImpl(this)
 
     /** Get connection interface between sysui and shell */
     fun asDesktopMode(): DesktopMode {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt
index c2dd4d28..e4a28e9 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt
@@ -138,11 +138,10 @@
             )
         }
 
-        private fun getMinimizeChange(info: TransitionInfo, taskId: Int): TransitionInfo.Change? {
-            return info.changes.find { change ->
+        private fun getMinimizeChange(info: TransitionInfo, taskId: Int): TransitionInfo.Change? =
+            info.changes.find { change ->
                 change.taskInfo?.taskId == taskId && change.mode == TRANSIT_TO_BACK
             }
-        }
 
         override fun onTransitionMerged(merged: IBinder, playing: IBinder) {
             if (activeTransitionTokensAndTasks.remove(merged) != null) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt
index 1380a9c..91f10dc 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt
@@ -765,9 +765,8 @@
         transitionState = null
     }
 
-    private fun isSplitTask(taskId: Int): Boolean {
-        return splitScreenController.isTaskInSplitScreen(taskId)
-    }
+    private fun isSplitTask(taskId: Int): Boolean =
+        splitScreenController.isTaskInSplitScreen(taskId)
 
     private fun getOtherSplitTask(taskId: Int): Int? {
         val splitPos = splitScreenController.getSplitPosition(taskId)
@@ -781,9 +780,8 @@
         return splitScreenController.getTaskInfo(otherTaskPos)?.taskId
     }
 
-    protected fun requireTransitionState(): TransitionState {
-        return transitionState ?: error("Expected non-null transition state")
-    }
+    protected fun requireTransitionState(): TransitionState =
+        transitionState ?: error("Expected non-null transition state")
 
     /**
      * Represents the layering (Z order) that will be given to any window based on its type during
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/ToggleResizeDesktopTaskTransitionHandler.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/ToggleResizeDesktopTaskTransitionHandler.kt
index a47e937..5e84019 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/ToggleResizeDesktopTaskTransitionHandler.kt
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/ToggleResizeDesktopTaskTransitionHandler.kt
@@ -156,13 +156,11 @@
         return matchingChanges.first()
     }
 
-    private fun isWallpaper(change: TransitionInfo.Change): Boolean {
-        return (change.flags and TransitionInfo.FLAG_IS_WALLPAPER) != 0
-    }
+    private fun isWallpaper(change: TransitionInfo.Change): Boolean =
+        (change.flags and TransitionInfo.FLAG_IS_WALLPAPER) != 0
 
-    private fun isValidTaskChange(change: TransitionInfo.Change): Boolean {
-        return change.taskInfo != null && change.taskInfo?.taskId != -1
-    }
+    private fun isValidTaskChange(change: TransitionInfo.Change): Boolean =
+        change.taskInfo != null && change.taskInfo?.taskId != -1
 
     companion object {
         private const val RESIZE_DURATION_MS = 300L
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeEventLoggerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeEventLoggerTest.kt
index 9b24c1c..eb6f1d7 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeEventLoggerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeEventLoggerTest.kt
@@ -501,13 +501,12 @@
         }
     }
 
-    private fun createTaskInfo(): RunningTaskInfo {
-        return TestRunningTaskInfoBuilder()
+    private fun createTaskInfo(): RunningTaskInfo =
+        TestRunningTaskInfoBuilder()
             .setTaskId(TASK_ID)
             .setUid(TASK_UID)
             .setBounds(Rect(TASK_X, TASK_Y, TASK_WIDTH, TASK_HEIGHT))
             .build()
-    }
 
     private fun verifyNoLogging() {
         verify(
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt
index 4bb7430..95ed8b4 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt
@@ -353,8 +353,8 @@
         taskRepository = userRepositories.current
     }
 
-    private fun createController(): DesktopTasksController {
-        return DesktopTasksController(
+    private fun createController() =
+        DesktopTasksController(
             context,
             shellInit,
             shellCommandHandler,
@@ -388,7 +388,6 @@
             desktopWallpaperActivityTokenProvider,
             Optional.of(bubbleController),
         )
-    }
 
     @After
     fun tearDown() {
@@ -4958,13 +4957,12 @@
         return task
     }
 
-    private fun setUpPipTask(autoEnterEnabled: Boolean): RunningTaskInfo {
+    private fun setUpPipTask(autoEnterEnabled: Boolean): RunningTaskInfo =
         // active = false marks the task as non-visible; PiP window doesn't count as visible tasks
-        return setUpFreeformTask(active = false).apply {
+        setUpFreeformTask(active = false).apply {
             pictureInPictureParams =
                 PictureInPictureParams.Builder().setAutoEnterEnabled(autoEnterEnabled).build()
         }
-    }
 
     private fun setUpHomeTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo {
         val task = createHomeTask(displayId)
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksTransitionObserverTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksTransitionObserverTest.kt
index 96ed214..622cb4c 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksTransitionObserverTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksTransitionObserverTest.kt
@@ -458,8 +458,8 @@
         }
     }
 
-    private fun createCloseTransition(task: RunningTaskInfo?): TransitionInfo {
-        return TransitionInfo(TRANSIT_CLOSE, /* flags= */ 0).apply {
+    private fun createCloseTransition(task: RunningTaskInfo?) =
+        TransitionInfo(TRANSIT_CLOSE, /* flags= */ 0).apply {
             addChange(
                 Change(mock(), mock()).apply {
                     mode = TRANSIT_CLOSE
@@ -469,10 +469,9 @@
                 }
             )
         }
-    }
 
-    private fun createToBackTransition(task: RunningTaskInfo?): TransitionInfo {
-        return TransitionInfo(TRANSIT_TO_BACK, /* flags= */ 0).apply {
+    private fun createToBackTransition(task: RunningTaskInfo?) =
+        TransitionInfo(TRANSIT_TO_BACK, /* flags= */ 0).apply {
             addChange(
                 Change(mock(), mock()).apply {
                     mode = TRANSIT_TO_BACK
@@ -482,7 +481,6 @@
                 }
             )
         }
-    }
 
     private fun createToFrontTransition(task: RunningTaskInfo?): TransitionInfo {
         return TransitionInfo(TRANSIT_TO_FRONT, 0 /* flags */).apply {
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt
index 341df02..bf9cf00 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt
@@ -676,8 +676,8 @@
             }
     }
 
-    private fun createTransitionInfo(type: Int, draggedTask: RunningTaskInfo): TransitionInfo {
-        return TransitionInfo(type, /* flags= */ 0).apply {
+    private fun createTransitionInfo(type: Int, draggedTask: RunningTaskInfo) =
+        TransitionInfo(type, /* flags= */ 0).apply {
             addChange( // Home.
                 TransitionInfo.Change(mock(), homeTaskLeash).apply {
                     parent = null
@@ -700,7 +700,6 @@
                 }
             )
         }
-    }
 
     private fun systemPropertiesKey(name: String) =
         "${SpringDragToDesktopTransitionHandler.SYSTEM_PROPERTIES_GROUP}.$name"