diff options
author | nicolasroard <nicolasroard@google.com> | 2013-07-31 16:22:59 -0700 |
---|---|---|
committer | nicolasroard <nicolasroard@google.com> | 2013-07-31 17:39:52 -0700 |
commit | 3a5bc6b23096365e1a814f8999937028bc12b401 (patch) | |
tree | e3f532fb73211a0ac4622581623c1d555aff511a /src/com/android/gallery3d/filtershow/filters | |
parent | bb2848ab2a8d532956f4730c8cf7434eb3a8600f (diff) | |
download | android_packages_apps_Snap-3a5bc6b23096365e1a814f8999937028bc12b401.tar.gz android_packages_apps_Snap-3a5bc6b23096365e1a814f8999937028bc12b401.tar.bz2 android_packages_apps_Snap-3a5bc6b23096365e1a814f8999937028bc12b401.zip |
Fix problem with N-1 caching when no filters / one filter
- also fix equals() for geometry
Change-Id: I6f6f21d1e274b3b95ac4b5189b2fa7f419912864
Diffstat (limited to 'src/com/android/gallery3d/filtershow/filters')
4 files changed, 55 insertions, 0 deletions
diff --git a/src/com/android/gallery3d/filtershow/filters/FilterCropRepresentation.java b/src/com/android/gallery3d/filtershow/filters/FilterCropRepresentation.java index 345c2f1bf..fea8b2139 100644 --- a/src/com/android/gallery3d/filtershow/filters/FilterCropRepresentation.java +++ b/src/com/android/gallery3d/filtershow/filters/FilterCropRepresentation.java @@ -60,6 +60,25 @@ public class FilterCropRepresentation extends FilterRepresentation { mImage.set(r.mImage); } + @Override + public boolean equals(FilterRepresentation rep) { + if (!(rep instanceof FilterCropRepresentation)) { + return false; + } + FilterCropRepresentation crop = (FilterCropRepresentation) rep; + if (mCrop.bottom != crop.mCrop.bottom + || mCrop.left != crop.mCrop.left + || mCrop.right != crop.mCrop.right + || mCrop.top != crop.mCrop.top + || mImage.bottom != crop.mImage.bottom + || mImage.left != crop.mImage.left + || mImage.right != crop.mImage.right + || mImage.top != crop.mImage.top) { + return false; + } + return true; + } + public RectF getCrop() { return new RectF(mCrop); } diff --git a/src/com/android/gallery3d/filtershow/filters/FilterMirrorRepresentation.java b/src/com/android/gallery3d/filtershow/filters/FilterMirrorRepresentation.java index 0acf70e71..22a15f27e 100644 --- a/src/com/android/gallery3d/filtershow/filters/FilterMirrorRepresentation.java +++ b/src/com/android/gallery3d/filtershow/filters/FilterMirrorRepresentation.java @@ -79,6 +79,18 @@ public class FilterMirrorRepresentation extends FilterRepresentation { this(Mirror.NONE); } + @Override + public boolean equals(FilterRepresentation rep) { + if (!(rep instanceof FilterMirrorRepresentation)) { + return false; + } + FilterMirrorRepresentation mirror = (FilterMirrorRepresentation) rep; + if (mirror.mMirror.value() != mirror.mMirror.value()) { + return false; + } + return true; + } + public Mirror getMirror() { return mMirror; } diff --git a/src/com/android/gallery3d/filtershow/filters/FilterRotateRepresentation.java b/src/com/android/gallery3d/filtershow/filters/FilterRotateRepresentation.java index 8f7d8ebef..d5f3a5b40 100644 --- a/src/com/android/gallery3d/filtershow/filters/FilterRotateRepresentation.java +++ b/src/com/android/gallery3d/filtershow/filters/FilterRotateRepresentation.java @@ -134,6 +134,18 @@ public class FilterRotateRepresentation extends FilterRepresentation { } @Override + public boolean equals(FilterRepresentation rep) { + if (!(rep instanceof FilterRotateRepresentation)) { + return false; + } + FilterRotateRepresentation rotate = (FilterRotateRepresentation) rep; + if (rotate.mRotation.value() != mRotation.value()) { + return false; + } + return true; + } + + @Override public void deSerializeRepresentation(JsonReader reader) throws IOException { boolean unset = true; reader.beginObject(); diff --git a/src/com/android/gallery3d/filtershow/filters/FilterStraightenRepresentation.java b/src/com/android/gallery3d/filtershow/filters/FilterStraightenRepresentation.java index a06216ef3..890f1cfd6 100644 --- a/src/com/android/gallery3d/filtershow/filters/FilterStraightenRepresentation.java +++ b/src/com/android/gallery3d/filtershow/filters/FilterStraightenRepresentation.java @@ -55,6 +55,18 @@ public class FilterStraightenRepresentation extends FilterRepresentation { mStraighten = r.mStraighten; } + @Override + public boolean equals(FilterRepresentation rep) { + if (!(rep instanceof FilterStraightenRepresentation)) { + return false; + } + FilterStraightenRepresentation straighten = (FilterStraightenRepresentation) rep; + if (straighten.mStraighten != mStraighten) { + return false; + } + return true; + } + public float getStraighten() { return mStraighten; } |