diff options
| author | 2023-11-01 17:52:05 +0000 | |
|---|---|---|
| committer | 2023-11-01 17:52:05 +0000 | |
| commit | 49bbb76a715eb14232b87f484ee2e0fcdaf0589c (patch) | |
| tree | b5cdc3c5a1d32b79d638c8aaab0bf5579cd89f34 | |
| parent | c5085b72c0f6e75b989fc91f9ea5784d4e26eaa9 (diff) | |
| parent | 9861872f57e14dae9eec95f3858400af2116e08f (diff) | |
Merge "Add API flags for ALWAYS_UPDATE_WALLPAPER" into main
| -rw-r--r-- | core/api/system-current.txt | 2 | ||||
| -rw-r--r-- | core/java/android/window/flags/wallpaper_manager.aconfig | 8 | ||||
| -rw-r--r-- | core/res/AndroidManifest.xml | 1 | ||||
| -rw-r--r-- | services/core/java/com/android/server/wm/Session.java | 5 |
4 files changed, 13 insertions, 3 deletions
diff --git a/core/api/system-current.txt b/core/api/system-current.txt index 5bce8b291402..5674aec97ff5 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -37,7 +37,7 @@ package android { field public static final String ALLOW_ANY_CODEC_FOR_PLAYBACK = "android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK"; field public static final String ALLOW_PLACE_IN_MULTI_PANE_SETTINGS = "android.permission.ALLOW_PLACE_IN_MULTI_PANE_SETTINGS"; field public static final String ALLOW_SLIPPERY_TOUCHES = "android.permission.ALLOW_SLIPPERY_TOUCHES"; - field public static final String ALWAYS_UPDATE_WALLPAPER = "android.permission.ALWAYS_UPDATE_WALLPAPER"; + field @FlaggedApi("com.android.window.flags.always_update_wallpaper_permission") public static final String ALWAYS_UPDATE_WALLPAPER = "android.permission.ALWAYS_UPDATE_WALLPAPER"; field public static final String AMBIENT_WALLPAPER = "android.permission.AMBIENT_WALLPAPER"; field public static final String APPROVE_INCIDENT_REPORTS = "android.permission.APPROVE_INCIDENT_REPORTS"; field public static final String ASSOCIATE_COMPANION_DEVICES = "android.permission.ASSOCIATE_COMPANION_DEVICES"; diff --git a/core/java/android/window/flags/wallpaper_manager.aconfig b/core/java/android/window/flags/wallpaper_manager.aconfig new file mode 100644 index 000000000000..09be0cfc5fb0 --- /dev/null +++ b/core/java/android/window/flags/wallpaper_manager.aconfig @@ -0,0 +1,8 @@ +package: "com.android.window.flags" + +flag { + name: "always_update_wallpaper_permission" + namespace: "wear_frameworks" + description: "Allow out of focus process to update wallpaper complications" + bug: "271132915" +}
\ No newline at end of file diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 8c91be8b21c0..c75f99616f5b 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -4065,6 +4065,7 @@ <!-- Allow apps to always update wallpaper by sending data. @SystemApi @hide + @FlaggedApi("com.android.window.flags.always_update_wallpaper_permission") --> <permission android:name="android.permission.ALWAYS_UPDATE_WALLPAPER" android:protectionLevel="internal|role" /> diff --git a/services/core/java/com/android/server/wm/Session.java b/services/core/java/com/android/server/wm/Session.java index 3775ccd79d4c..a756847d59ea 100644 --- a/services/core/java/com/android/server/wm/Session.java +++ b/services/core/java/com/android/server/wm/Session.java @@ -86,6 +86,7 @@ import com.android.internal.os.logging.MetricsLoggerWrapper; import com.android.internal.protolog.common.ProtoLog; import com.android.server.LocalServices; import com.android.server.wm.WindowManagerService.H; +import com.android.window.flags.Flags; import java.io.PrintWriter; import java.util.Collections; @@ -166,8 +167,8 @@ class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { mCanSetUnrestrictedGestureExclusion = service.mContext.checkCallingOrSelfPermission(SET_UNRESTRICTED_GESTURE_EXCLUSION) == PERMISSION_GRANTED; - mCanAlwaysUpdateWallpaper = - service.mContext.checkCallingOrSelfPermission(ALWAYS_UPDATE_WALLPAPER) + mCanAlwaysUpdateWallpaper = Flags.alwaysUpdateWallpaperPermission() + && service.mContext.checkCallingOrSelfPermission(ALWAYS_UPDATE_WALLPAPER) == PERMISSION_GRANTED; mShowingAlertWindowNotificationAllowed = mService.mShowAlertWindowNotifications; mDragDropController = mService.mDragDropController; |