summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author bkchoi <bkchoi@google.com> 2023-05-31 09:48:23 -0700
committer bkchoi <bkchoi@google.com> 2023-05-31 10:51:37 -0700
commitebeb6ced3700f90e99c407f73661f0a39ad7d6b1 (patch)
treed1ded87a9da05164190239e2e405fd457bef9b42
parent3f21f5a83c1a45ff52114117ed839c5806c63ac5 (diff)
Exclude a private display from getDisplayIdsForStartingVisibleBackgroundUsers
A private display (e.g. cluster dipslay in Automotive) may not be used for starting a visible background user, so should be exlcuded from the results of ActivityManagerService#getDisplayIdsForStartingVisibleBackgroundUsers. Bug: 284489759 Test: adb shell cmd activity list-displays-for-starting-users atest ActivityManagerServiceTest Change-Id: Ic34c10cf8736e6870e4a8b9be2eb17ce280a44b3
-rw-r--r--services/core/java/com/android/server/am/ActivityManagerService.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 460ce4484a4b..6231abb78763 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -19520,7 +19520,7 @@ public class ActivityManagerService extends IActivityManager.Stub
for (Display display : allDisplays) {
int displayId = display.getDisplayId();
// TODO(b/247592632): check other properties like isSecure or proper display type
- if (display.isValid()
+ if (display.isValid() && ((display.getFlags() & Display.FLAG_PRIVATE) == 0)
&& (allowOnDefaultDisplay || displayId != Display.DEFAULT_DISPLAY)) {
displayIds[numberValidDisplays++] = displayId;
}