diff options
author | John Hoford <hoford@google.com> | 2013-04-23 15:55:51 -0700 |
---|---|---|
committer | John Hoford <hoford@google.com> | 2013-04-23 16:03:27 -0700 |
commit | c6ee564f2b01e0b18147e7847699fd04c0e0b039 (patch) | |
tree | 13de19deba2ea1ba1ba95a2645e8e3b76613748c /src/com | |
parent | 745360403e0b8e075b00db154b4f1c92c0baf5c3 (diff) | |
download | android_packages_apps_Snap-c6ee564f2b01e0b18147e7847699fd04c0e0b039.tar.gz android_packages_apps_Snap-c6ee564f2b01e0b18147e7847699fd04c0e0b039.tar.bz2 android_packages_apps_Snap-c6ee564f2b01e0b18147e7847699fd04c0e0b039.zip |
interruptible renderer
bug:8632908
Change-Id: I4df59fb0c82370491d953292fd1cd17443054ab3
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/android/gallery3d/filtershow/presets/FilterEnvironment.java | 10 | ||||
-rw-r--r-- | src/com/android/gallery3d/filtershow/presets/ImagePreset.java | 3 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/com/android/gallery3d/filtershow/presets/FilterEnvironment.java b/src/com/android/gallery3d/filtershow/presets/FilterEnvironment.java index 3c53227fc..c454c1ab6 100644 --- a/src/com/android/gallery3d/filtershow/presets/FilterEnvironment.java +++ b/src/com/android/gallery3d/filtershow/presets/FilterEnvironment.java @@ -35,6 +35,16 @@ public class FilterEnvironment { private int mQuality; private FiltersManager mFiltersManager; private CachingPipeline mCachingPipeline; + private volatile boolean mStop = false; + + public synchronized boolean needsStop() { + return mStop; + } + + public synchronized void setStop(boolean stop) { + this.mStop = stop; + } + private HashMap<Long, WeakReference<Bitmap>> bitmapCach = new HashMap<Long, WeakReference<Bitmap>>(); diff --git a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java index bd2f494cd..ca97761ed 100644 --- a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java +++ b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java @@ -472,6 +472,9 @@ public class ImagePreset { representation.synchronizeRepresentation(); } bitmap = environment.applyRepresentation(representation, bitmap); + if (environment.needsStop()) { + return bitmap; + } } } |