diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/gallery3d/filtershow/cache/DirectPresetCache.java | 17 | ||||
-rw-r--r-- | src/com/android/gallery3d/filtershow/cache/ImageLoader.java | 4 |
2 files changed, 16 insertions, 5 deletions
diff --git a/src/com/android/gallery3d/filtershow/cache/DirectPresetCache.java b/src/com/android/gallery3d/filtershow/cache/DirectPresetCache.java index fe75ccc27..adbb5daf7 100644 --- a/src/com/android/gallery3d/filtershow/cache/DirectPresetCache.java +++ b/src/com/android/gallery3d/filtershow/cache/DirectPresetCache.java @@ -61,13 +61,20 @@ public class DirectPresetCache implements Cache { } public void notifyObservers() { - for (int i = 0; i < mObservers.size(); i++) { - ImageShow imageShow = mObservers.elementAt(i); - imageShow.invalidate(); - imageShow.updateImage(); - } + mLoader.getActivity().runOnUiThread(mNotifyObserversRunnable); } + private final Runnable mNotifyObserversRunnable = new Runnable() { + @Override + public void run() { + for (int i = 0; i < mObservers.size(); i++) { + ImageShow imageShow = mObservers.elementAt(i); + imageShow.invalidate(); + imageShow.updateImage(); + } + } + }; + @Override public void addObserver(ImageShow observer) { if (!mObservers.contains(observer)) { diff --git a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java index f2b9177ba..b661aad1a 100644 --- a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java +++ b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java @@ -89,6 +89,10 @@ public class ImageLoader { mHiresCache = new DelayedPresetCache(this, 3); } + public FilterShowActivity getActivity() { + return mActivity; + } + public void loadBitmap(Uri uri,int size) { mUri = uri; mOrientation = getOrientation(mContext, uri); |