summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornicolasroard <nicolasroard@google.com>2013-03-16 14:27:22 -0700
committernicolasroard <nicolasroard@google.com>2013-03-19 10:00:39 -0700
commit3f26536bf18efcd9862d1553c4900d4100edd5a5 (patch)
treec8b22c7c93f5e092a5dc1b5b76470a2710f74f75
parent4dc98460359023d2a7d11752c09efa656fc17595 (diff)
downloadandroid_packages_apps_Snap-3f26536bf18efcd9862d1553c4900d4100edd5a5.tar.gz
android_packages_apps_Snap-3f26536bf18efcd9862d1553c4900d4100edd5a5.tar.bz2
android_packages_apps_Snap-3f26536bf18efcd9862d1553c4900d4100edd5a5.zip
Improves double-tap and comparison mechanism
Change-Id: I1fda50d7d179703db9e0e525550018c259233e89
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/ImageShow.java21
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/MasterImage.java5
2 files changed, 13 insertions, 13 deletions
diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
index 0ed8c3c29..2de37f6fe 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
@@ -578,17 +578,15 @@ public class ImageShow extends View implements OnGestureListener,
mTouch.x = ex;
mTouch.y = ey;
- if (!ENABLE_COMPARISON || event.getPointerCount() == 2) {
- float scaleFactor = MasterImage.getImage().getScaleFactor();
- if (scaleFactor >= 1) {
- float translateX = (mTouch.x - mTouchDown.x) / scaleFactor;
- float translateY = (mTouch.y - mTouchDown.y) / scaleFactor;
- Point originalTranslation = MasterImage.getImage().getOriginalTranslation();
- Point translation = MasterImage.getImage().getTranslation();
- translation.x = (int) (originalTranslation.x + translateX);
- translation.y = (int) (originalTranslation.y + translateY);
- MasterImage.getImage().setTranslation(translation);
- }
+ float scaleFactor = MasterImage.getImage().getScaleFactor();
+ if (scaleFactor > 1 && (!ENABLE_COMPARISON || event.getPointerCount() == 2)) {
+ float translateX = (mTouch.x - mTouchDown.x) / scaleFactor;
+ float translateY = (mTouch.y - mTouchDown.y) / scaleFactor;
+ Point originalTranslation = MasterImage.getImage().getOriginalTranslation();
+ Point translation = MasterImage.getImage().getTranslation();
+ translation.x = (int) (originalTranslation.x + translateX);
+ translation.y = (int) (originalTranslation.y + translateY);
+ MasterImage.getImage().setTranslation(translation);
mTouchShowOriginal = false;
} else if (!mOriginalDisabled && !mActivity.isShowingHistoryPanel()
&& (System.currentTimeMillis() - mTouchShowOriginalDate
@@ -627,7 +625,6 @@ public class ImageShow extends View implements OnGestureListener,
}
if (scale != MasterImage.getImage().getScaleFactor()) {
MasterImage.getImage().setScaleFactor(scale);
- MasterImage.getImage().needsUpdateFullResPreview();
invalidate();
}
return true;
diff --git a/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java b/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java
index 4f9c450de..680d1f7d2 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java
@@ -461,8 +461,11 @@ public class MasterImage implements RenderingRequestCaller {
}
public void setScaleFactor(float scaleFactor) {
+ if (scaleFactor == mScaleFactor) {
+ return;
+ }
mScaleFactor = scaleFactor;
- needsUpdateFullResPreview();
+ invalidatePartialPreview();
}
public Point getTranslation() {