OSDN Git Service

DO NOT MERGE ANYWHERE Allow Wear Home app to send wallpaper commands at any time
authorErik Wolsheimer <ewol@google.com>
Fri, 21 Oct 2016 04:09:44 +0000 (21:09 -0700)
committerErik Wolsheimer <ewol@google.com>
Fri, 21 Oct 2016 16:27:15 +0000 (09:27 -0700)
BUG: 32172459
BUG: 32069897
Change-Id: I6f030b6288433b9cefce0f2fb1a69de61bfa7617

services/core/java/com/android/server/wm/WallpaperController.java

index e7ceba9..aea8b39 100644 (file)
@@ -346,7 +346,15 @@ class WallpaperController {
 
     Bundle sendWindowWallpaperCommand(
             WindowState window, String action, int x, int y, int z, Bundle extras, boolean sync) {
-        if (window == mWallpaperTarget
+
+        // HACK(ewol): Custom whitelist for Wear Home app, to allow it to update the wallpaper
+        // regardless of what window is targeted.
+        // http://b/32172459
+        final boolean hackWearWhitelisted = (window != null) && (window.mAttrs != null)
+                && "com.google.android.wearable.app".equals(window.mAttrs.packageName);
+
+        if (hackWearWhitelisted
+                || window == mWallpaperTarget
                 || window == mLowerWallpaperTarget
                 || window == mUpperWallpaperTarget) {
             boolean doWait = sync;