summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Andrii Kulian <akulian@google.com> 2017-03-17 10:30:50 -0700
committer Andrii Kulian <akulian@google.com> 2017-03-17 10:30:50 -0700
commite6ac20e1c7146f326070101f14ffa8a456ae3fe8 (patch)
tree341c03470914fabe4bfa7da24f7c289fa368e9f9
parentff8b79e162cb4e1c7a8152b9f6cf44dbaceeb175 (diff)
Allow holders of MANAGE_ACTIVITY_STACKS to launch on private displays
MANAGE_ACTIVITY_STACKS permission allows moving stacks, tasks and activities between corresponding parents. It makes no sense to require more strict START_ANY_ACTIVITY permission to launch on private display, as an activity still can be moved to it. Bug: 34164473 Test: 'adb unroot' and run android.server.cts.ActivityManagerDisplayTests Change-Id: I3b59127829c432e42a46630025eeddd152bce1b0
-rw-r--r--services/core/java/com/android/server/am/ActivityStackSupervisor.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/am/ActivityStackSupervisor.java b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
index 42efe0b5d8e0..217515b936dd 100644
--- a/services/core/java/com/android/server/am/ActivityStackSupervisor.java
+++ b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
@@ -16,6 +16,7 @@
package com.android.server.am;
+import static android.Manifest.permission.MANAGE_ACTIVITY_STACKS;
import static android.Manifest.permission.START_ANY_ACTIVITY;
import static android.Manifest.permission.START_TASKS_FROM_RECENTS;
import static android.app.ActivityManager.LOCK_TASK_MODE_LOCKED;
@@ -1612,8 +1613,8 @@ public class ActivityStackSupervisor extends ConfigurationContainer implements D
return true;
}
- // Check if the caller can launch anything.
- final int startAnyPerm = mService.checkPermission(START_ANY_ACTIVITY, callingPid,
+ // Check if the caller can manage activity stacks.
+ final int startAnyPerm = mService.checkPermission(MANAGE_ACTIVITY_STACKS, callingPid,
callingUid);
if (startAnyPerm == PERMISSION_GRANTED) {
if (DEBUG_TASKS) Slog.d(TAG, "Launch on display check:"