summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Louis Chang <louischang@google.com> 2024-03-18 01:04:59 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-03-18 01:04:59 +0000
commite1ee26664cf584e895d4a75c84da1681e55533f8 (patch)
tree85edab8ab34f0a331ec2f7b515eaff32f3be0078
parent2ec2440b82b4ef6045cba03ac37faed5c6d9fa96 (diff)
parent5f1e492e159fd19b567ba5b62d3e2f2e5f733425 (diff)
Merge "Fix MixedDeviceOwnerTest test failure" into main
-rw-r--r--services/core/java/com/android/server/wm/RecentTasks.java5
-rw-r--r--services/tests/wmtests/src/com/android/server/wm/RecentTasksTest.java6
2 files changed, 9 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/wm/RecentTasks.java b/services/core/java/com/android/server/wm/RecentTasks.java
index 33588a03b8e1..8e78d25d8373 100644
--- a/services/core/java/com/android/server/wm/RecentTasks.java
+++ b/services/core/java/com/android/server/wm/RecentTasks.java
@@ -1253,6 +1253,11 @@ class RecentTasks {
continue;
}
+ if (otherTask.topRunningActivity() == null) {
+ // Skip if there's no running activity in the Task.
+ continue;
+ }
+
// Stop searching if the task has higher z-ordering, or increase the index and
// continue the search.
if (task.compareTo(otherTask) > 0) {
diff --git a/services/tests/wmtests/src/com/android/server/wm/RecentTasksTest.java b/services/tests/wmtests/src/com/android/server/wm/RecentTasksTest.java
index f7c253d9df03..bfa191e6f724 100644
--- a/services/tests/wmtests/src/com/android/server/wm/RecentTasksTest.java
+++ b/services/tests/wmtests/src/com/android/server/wm/RecentTasksTest.java
@@ -1210,9 +1210,11 @@ public class RecentTasksTest extends WindowTestsBase {
@Test
public void addTask_tasksAreAddedAccordingToZOrder() {
final Task firstTask = new TaskBuilder(mSupervisor).setTaskId(1)
- .setWindowingMode(WINDOWING_MODE_FREEFORM).build();
+ .setWindowingMode(WINDOWING_MODE_FREEFORM)
+ .setCreateActivity(true).build();
final Task secondTask = new TaskBuilder(mSupervisor).setTaskId(2)
- .setWindowingMode(WINDOWING_MODE_FREEFORM).build();
+ .setWindowingMode(WINDOWING_MODE_FREEFORM)
+ .setCreateActivity(true).build();
assertEquals(-1, firstTask.compareTo(secondTask));