diff options
| author | 2009-09-02 22:20:29 -0700 | |
|---|---|---|
| committer | 2009-09-02 22:20:29 -0700 | |
| commit | 3bb9c6d1f5b252dc3ed7eb069ff5aeabd2b02548 (patch) | |
| tree | 78b3efeec806dc9dab294ebab607bd0dc4a5ba84 | |
| parent | bdd52b264af8f562dd368d40b66771c88d45127f (diff) | |
| parent | 5e802fbb895a0ff4d9be1a72390f51c134a5ba0f (diff) | |
Merge change 23774 into eclair
* changes:
Fix issue #2097189: can't set custom wallpaper
| -rw-r--r-- | core/java/android/app/WallpaperManager.java | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/core/java/android/app/WallpaperManager.java b/core/java/android/app/WallpaperManager.java index a6bbaa691efa..c40fe6946a46 100644 --- a/core/java/android/app/WallpaperManager.java +++ b/core/java/android/app/WallpaperManager.java @@ -62,22 +62,23 @@ public class WallpaperManager { private static final int MSG_CLEAR_WALLPAPER = 1; - private final Handler mHandler = new Handler() { - @Override - public void handleMessage(Message msg) { - switch (msg.what) { - case MSG_CLEAR_WALLPAPER: - synchronized (this) { - mWallpaper = null; - } - break; - } - } - }; + private final Handler mHandler; - Globals() { + Globals(Looper looper) { IBinder b = ServiceManager.getService(Context.WALLPAPER_SERVICE); mService = IWallpaperManager.Stub.asInterface(b); + mHandler = new Handler() { + @Override + public void handleMessage(Message msg) { + switch (msg.what) { + case MSG_CLEAR_WALLPAPER: + synchronized (this) { + mWallpaper = null; + } + break; + } + } + }; } public void onWallpaperChanged() { @@ -188,7 +189,7 @@ public class WallpaperManager { static void initGlobals(Looper looper) { synchronized (mSync) { if (sGlobals == null) { - sGlobals = new Globals(); + sGlobals = new Globals(looper); } } } |