From aa9567d8f377fee9dbbcd8bb23a9cc3a2989ca48 Mon Sep 17 00:00:00 2001 From: nicolasroard Date: Wed, 17 Oct 2012 15:11:53 -0700 Subject: Fix back button behaviour bug:7290000 bug:7256201 Change-Id: Ia6f5726b0602c45e98566bcb5e027686e7f2fe57 --- .../gallery3d/filtershow/presets/ImagePreset.java | 30 +++++++++++++++++----- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java index 42dbcb90e..f303d4c15 100644 --- a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java +++ b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java @@ -37,7 +37,9 @@ public class ImagePreset { public ImagePreset(ImagePreset source, String historyName) { this(source); - if (historyName!=null) setHistoryName(historyName); + if (historyName != null) { + setHistoryName(historyName); + } } public ImagePreset(ImagePreset source) { @@ -58,6 +60,22 @@ public class ImagePreset { mGeoData.set(source.mGeoData); } + public boolean hasModifications() { + if (mImageBorder != null && !mImageBorder.isNil()) { + return true; + } + if (mGeoData.hasModifications()) { + return true; + } + for (int i = 0; i < mFilters.size(); i++) { + ImageFilter filter = mFilters.elementAt(i); + if (!filter.isNil()) { + return true; + } + } + return false; + } + public void setGeometry(GeometryMetadata m) { mGeoData.set(m); } @@ -123,27 +141,25 @@ public class ImagePreset { public void add(ImageFilter filter) { - if (filter.getFilterType() == ImageFilter.TYPE_BORDER){ + if (filter.getFilterType() == ImageFilter.TYPE_BORDER) { setHistoryName("Border"); setBorder(filter); - } else if (filter.getFilterType() == ImageFilter.TYPE_FX){ - + } else if (filter.getFilterType() == ImageFilter.TYPE_FX) { boolean found = false; for (int i = 0; i < mFilters.size(); i++) { byte type = mFilters.get(i).getFilterType(); if (found) { - if (type != ImageFilter.TYPE_VIGNETTE){ + if (type != ImageFilter.TYPE_VIGNETTE) { mFilters.remove(i); continue; } } - if (type==ImageFilter.TYPE_FX){ + if (type == ImageFilter.TYPE_FX) { mFilters.remove(i); mFilters.add(i, filter); setHistoryName(filter.getName()); found = true; } - } if (!found) { mFilters.add(filter); -- cgit v1.2.3