From 2dce6281e6345be7e3f18983e51fe25a93584828 Mon Sep 17 00:00:00 2001 From: Edward Savage-Jones Date: Tue, 30 Aug 2016 18:44:19 +0200 Subject: [PATCH] Fix WallpaperManager APIs When support for lockscreen wallpapers was added in API level 24 the behaviour for earlier API versions changed. Calls to the old 'set' APIs no longer affect the overall device wallpaper, and can result in an end user not being able to change their lockscreen wallpaper. This upload restores the original API behaviour. Bug: 31204228 Change-Id: Ia16d2e2e379c54d798eef8f5c653099c2c581d78 --- core/java/android/app/WallpaperManager.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/java/android/app/WallpaperManager.java b/core/java/android/app/WallpaperManager.java index 7f467f0585c8f..84457b4410304 100644 --- a/core/java/android/app/WallpaperManager.java +++ b/core/java/android/app/WallpaperManager.java @@ -898,7 +898,7 @@ public class WallpaperManager { * wallpaper. */ public void setResource(@RawRes int resid) throws IOException { - setResource(resid, FLAG_SYSTEM); + setResource(resid, FLAG_SYSTEM | FLAG_LOCK); } /** @@ -1003,7 +1003,7 @@ public class WallpaperManager { */ public int setBitmap(Bitmap fullImage, Rect visibleCropHint, boolean allowBackup) throws IOException { - return setBitmap(fullImage, visibleCropHint, allowBackup, FLAG_SYSTEM); + return setBitmap(fullImage, visibleCropHint, allowBackup, FLAG_SYSTEM | FLAG_LOCK); } /** @@ -1128,7 +1128,7 @@ public class WallpaperManager { */ public int setStream(InputStream bitmapData, Rect visibleCropHint, boolean allowBackup) throws IOException { - return setStream(bitmapData, visibleCropHint, allowBackup, FLAG_SYSTEM); + return setStream(bitmapData, visibleCropHint, allowBackup, FLAG_SYSTEM | FLAG_LOCK); } /** @@ -1367,7 +1367,7 @@ public class WallpaperManager { */ @SystemApi public void clearWallpaper() { - clearWallpaper(FLAG_SYSTEM, mContext.getUserId()); + clearWallpaper(FLAG_SYSTEM | FLAG_LOCK, mContext.getUserId()); } /**