OSDN Git Service

Set permissions for launching on private displays
authorAndrii Kulian <akulian@google.com>
Tue, 17 Jan 2017 19:17:34 +0000 (11:17 -0800)
committerAndrii Kulian <akulian@google.com>
Fri, 20 Jan 2017 23:15:59 +0000 (15:15 -0800)
commitfb1bf69d5d7fc8c45e3ddbb8916e21ae57432ff1
tree05604068ff86389c91af9e420ec62121614d2e2d
parentb4fb0ca6b5d81585cec726fe4e661cefe6071306
Set permissions for launching on private displays

- System UIDs must be allowed to launch anything and everywhere.
- Display owner must be allowed to launch activities on it.
- Apps that are already on target display must be allowed to launch
  there.
- All other apps mustn't be allowed to launch on private displays.

Bug: 34230873
Test: android.server.cts.ActivityManagerDisplayTests
Test: #testPermissionLaunchFromSystem
Test: #testPermissionLaunchFromAppOnSecondary
Test: #testPermissionLaunchFromOwner
Test: #testPermissionLaunchFromDifferentApp
Change-Id: Ic98005649a6368370c512e822cba4e9decc18ae9
12 files changed:
core/java/android/hardware/display/DisplayManagerInternal.java
core/java/android/view/WindowManagerPolicy.java
services/core/java/com/android/server/am/ActivityRecord.java
services/core/java/com/android/server/am/ActivityStack.java
services/core/java/com/android/server/am/ActivityStackSupervisor.java
services/core/java/com/android/server/am/ActivityStarter.java
services/core/java/com/android/server/am/TaskRecord.java
services/core/java/com/android/server/display/DisplayManagerService.java
services/core/java/com/android/server/policy/PhoneWindowManager.java
services/core/java/com/android/server/wm/SplashScreenStartingData.java
services/core/java/com/android/server/wm/WindowManagerService.java
services/tests/servicestests/src/com/android/server/wm/TestWindowManagerPolicy.java