diff options
| author | John Spurlock <jspurlock@google.com> | 2013-11-05 14:05:05 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2013-11-05 14:05:06 +0000 |
| commit | a89727c85ef79c1384818e14d8b1151c99f82318 (patch) | |
| tree | 6f6e5dd47d5e727a5a5a195ce2009df51ab488c8 | |
| parent | c445b3f2cba67b7dbb8f926ef5e80ec14fb2f8d4 (diff) | |
| parent | 7ea91ec181b88f71390c544029d0c864f49ca92d (diff) | |
| download | frameworks_base-a89727c85ef79c1384818e14d8b1151c99f82318.zip frameworks_base-a89727c85ef79c1384818e14d8b1151c99f82318.tar.gz frameworks_base-a89727c85ef79c1384818e14d8b1151c99f82318.tar.bz2 | |
Merge "Ensure wallpaper hint is at least the display's max size." into klp-dev
| -rw-r--r-- | services/java/com/android/server/WallpaperManagerService.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/services/java/com/android/server/WallpaperManagerService.java b/services/java/com/android/server/WallpaperManagerService.java index 6957bac..c1a60ee 100644 --- a/services/java/com/android/server/WallpaperManagerService.java +++ b/services/java/com/android/server/WallpaperManagerService.java @@ -648,6 +648,10 @@ class WallpaperManagerService extends IWallpaperManager.Stub { if (width <= 0 || height <= 0) { throw new IllegalArgumentException("width and height must be > 0"); } + // Make sure it is at least as large as the display's maximum size. + int maxSizeDimension = getMaximumSizeDimension(); + width = Math.max(width, maxSizeDimension); + height = Math.max(height, maxSizeDimension); if (width != wallpaper.width || height != wallpaper.height) { wallpaper.width = width; @@ -1146,9 +1150,7 @@ class WallpaperManagerService extends IWallpaperManager.Stub { } // We always want to have some reasonable width hint. - WindowManager wm = (WindowManager)mContext.getSystemService(Context.WINDOW_SERVICE); - Display d = wm.getDefaultDisplay(); - int baseSize = d.getMaximumSizeDimension(); + int baseSize = getMaximumSizeDimension(); if (wallpaper.width < baseSize) { wallpaper.width = baseSize; } @@ -1157,6 +1159,12 @@ class WallpaperManagerService extends IWallpaperManager.Stub { } } + private int getMaximumSizeDimension() { + WindowManager wm = (WindowManager)mContext.getSystemService(Context.WINDOW_SERVICE); + Display d = wm.getDefaultDisplay(); + return d.getMaximumSizeDimension(); + } + // Called by SystemBackupAgent after files are restored to disk. void settingsRestored() { // TODO: If necessary, make it work for secondary users as well. This currently assumes |
