summaryrefslogtreecommitdiffstats
path: root/services/java/com/android
diff options
context:
space:
mode:
authorJohn Spurlock <jspurlock@google.com>2013-11-13 08:50:07 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2013-11-13 08:50:07 -0800
commite86ab5e1d34beb6706589f0ce316c0cfa0053ee4 (patch)
treede51d8860ffe0a9796ef7f09eea3d9b83714fbbf /services/java/com/android
parentf7400aa1da0b3604dbb5fc1bf4b4242a8e65e860 (diff)
parent79033da8e42ba6ccf096bf10dea1e51873f7d402 (diff)
downloadframeworks_base-e86ab5e1d34beb6706589f0ce316c0cfa0053ee4.zip
frameworks_base-e86ab5e1d34beb6706589f0ce316c0cfa0053ee4.tar.gz
frameworks_base-e86ab5e1d34beb6706589f0ce316c0cfa0053ee4.tar.bz2
am 79033da8: am 7d667ee2: Merge "Ensure wallpaper hint is at least as large as the display." into klp-dev
* commit '79033da8e42ba6ccf096bf10dea1e51873f7d402': Ensure wallpaper hint is at least as large as the display.
Diffstat (limited to 'services/java/com/android')
-rw-r--r--services/java/com/android/server/WallpaperManagerService.java19
1 files changed, 15 insertions, 4 deletions
diff --git a/services/java/com/android/server/WallpaperManagerService.java b/services/java/com/android/server/WallpaperManagerService.java
index c1a60ee..e25470c 100644
--- a/services/java/com/android/server/WallpaperManagerService.java
+++ b/services/java/com/android/server/WallpaperManagerService.java
@@ -40,6 +40,7 @@ import android.content.pm.ServiceInfo;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.pm.UserInfo;
import android.content.res.Resources;
+import android.graphics.Point;
import android.os.Binder;
import android.os.Bundle;
import android.os.Environment;
@@ -637,6 +638,16 @@ class WallpaperManagerService extends IWallpaperManager.Stub {
return false;
}
+ private Point getDefaultDisplaySize() {
+ Point p = new Point();
+ try {
+ mIWindowManager.getInitialDisplaySize(Display.DEFAULT_DISPLAY, p);
+ } catch (RemoteException e) {
+ // not remote
+ }
+ return p;
+ }
+
public void setDimensionHints(int width, int height) throws RemoteException {
checkPermission(android.Manifest.permission.SET_WALLPAPER_HINTS);
synchronized (mLock) {
@@ -648,10 +659,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);
+ // Make sure it is at least as large as the display.
+ Point displaySize = getDefaultDisplaySize();
+ width = Math.max(width, displaySize.x);
+ height = Math.max(height, displaySize.y);
if (width != wallpaper.width || height != wallpaper.height) {
wallpaper.width = width;