Merge "Avoid instantiating unnecessary OverviewTask in getCurrentTask loop" into main
diff --git a/tests/tapl/com/android/launcher3/tapl/BaseOverview.java b/tests/tapl/com/android/launcher3/tapl/BaseOverview.java
index fa5a7b3..44869be 100644
--- a/tests/tapl/com/android/launcher3/tapl/BaseOverview.java
+++ b/tests/tapl/com/android/launcher3/tapl/BaseOverview.java
@@ -236,14 +236,13 @@
         final List<UiObject2> taskViews = getTasks();
         mLauncher.assertNotEquals("Unable to find a task", 0, taskViews.size());
 
-        final List<OverviewTask> overviewTasks = taskViews.stream().map(
-                task -> new OverviewTask(mLauncher, task, this)).toList();
         // The widest, and most top-right task should be the current task
-        return Collections.max(overviewTasks,
-                Comparator.comparingInt(OverviewTask::getVisibleWidth)
-                        .thenComparingInt(OverviewTask::getTaskCenterX)
-                        .thenComparing(
-                                Comparator.comparing(OverviewTask::getTaskCenterY).reversed()));
+        UiObject2 currentTask = Collections.max(taskViews,
+                Comparator.comparingInt((UiObject2 t) -> t.getParent().getVisibleBounds().width())
+                        .thenComparingInt((UiObject2 t) -> t.getParent().getVisibleCenter().x)
+                        .thenComparing(Comparator.comparing(
+                                (UiObject2 t) -> t.getParent().getVisibleCenter().y).reversed()));
+        return new OverviewTask(mLauncher, currentTask, this);
     }
 
     /** Returns an overview task matching TestActivity {@param activityNumber}. */