summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/ImageShow.java18
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/MasterImage.java9
2 files changed, 23 insertions, 4 deletions
diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
index 1edfd79a1..f44e6f5a7 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
@@ -81,6 +81,7 @@ public class ImageShow extends View implements OnGestureListener,
private static int mOriginalTextMargin = 8;
private static int mOriginalTextSize = 26;
private static String mOriginalText = "Original";
+ private boolean mZoomIn = false;
protected GeometryMetadata getGeometry() {
return new GeometryMetadata(getImagePreset().mGeoData);
@@ -603,8 +604,17 @@ public class ImageShow extends View implements OnGestureListener,
@Override
public boolean onDoubleTap(MotionEvent arg0) {
- // TODO Auto-generated method stub
- return false;
+ mZoomIn = !mZoomIn;
+ float scale = 1.0f;
+ if (mZoomIn) {
+ scale = MasterImage.getImage().getMaxScaleFactor();
+ }
+ if (scale != MasterImage.getImage().getScaleFactor()) {
+ MasterImage.getImage().setScaleFactor(scale);
+ MasterImage.getImage().needsUpdateFullResPreview();
+ invalidate();
+ }
+ return true;
}
@Override
@@ -679,8 +689,8 @@ public class ImageShow extends View implements OnGestureListener,
public boolean onScale(ScaleGestureDetector detector) {
float scaleFactor = MasterImage.getImage().getScaleFactor();
scaleFactor = scaleFactor * detector.getScaleFactor();
- if (scaleFactor > 2) {
- scaleFactor = 2;
+ if (scaleFactor > MasterImage.getImage().getMaxScaleFactor()) {
+ scaleFactor = MasterImage.getImage().getMaxScaleFactor();
}
if (scaleFactor < 0.5) {
scaleFactor = 0.5f;
diff --git a/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java b/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java
index 209c3bdb9..6d47c9176 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java
@@ -66,6 +66,7 @@ public class MasterImage implements RenderingRequestCaller {
private GeometryMetadata mPreviousGeometry = null;
private float mScaleFactor = 1.0f;
+ private float mMaxScaleFactor = 3.0f; // TODO: base this on the current view / image
private Point mTranslation = new Point();
private Point mOriginalTranslation = new Point();
@@ -491,4 +492,12 @@ public class MasterImage implements RenderingRequestCaller {
public Bitmap getThumbnailBitmap() {
return mThumbnailBitmap;
}
+
+ public float getMaxScaleFactor() {
+ return mMaxScaleFactor;
+ }
+
+ public void setMaxScaleFactor(float maxScaleFactor) {
+ mMaxScaleFactor = maxScaleFactor;
+ }
}