summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Spurlock <jspurlock@google.com>2013-11-05 14:05:05 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2013-11-05 14:05:06 +0000
commita89727c85ef79c1384818e14d8b1151c99f82318 (patch)
tree6f6e5dd47d5e727a5a5a195ce2009df51ab488c8
parentc445b3f2cba67b7dbb8f926ef5e80ec14fb2f8d4 (diff)
parent7ea91ec181b88f71390c544029d0c864f49ca92d (diff)
downloadframeworks_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.java14
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