summaryrefslogtreecommitdiffstats
path: root/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
diff options
context:
space:
mode:
authornicolasroard <nicolasroard@google.com>2013-02-21 15:52:49 -0800
committernicolasroard <nicolasroard@google.com>2013-02-21 17:43:58 -0800
commite5498da0262fc836738aad63ea30286d8afa643c (patch)
tree52cedd2c2ee48a83cba2eb20077f5b693aad6eeb /src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
parent0f8047fe826a84829ab37bc7cd24c8a4dea0db64 (diff)
downloadandroid_packages_apps_Gallery2-e5498da0262fc836738aad63ea30286d8afa643c.tar.gz
android_packages_apps_Gallery2-e5498da0262fc836738aad63ea30286d8afa643c.tar.bz2
android_packages_apps_Gallery2-e5498da0262fc836738aad63ea30286d8afa643c.zip
Pinch to zoom refine
Change-Id: I538defa55a4ed898dd7c936ec813f052ac1b9e0a
Diffstat (limited to 'src/com/android/gallery3d/filtershow/imageshow/ImageShow.java')
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/ImageShow.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
index b91ebd195..39e0cc82b 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
@@ -21,15 +21,16 @@ import android.graphics.*;
import android.net.Uri;
import android.os.Handler;
import android.util.AttributeSet;
+import android.util.Log;
import android.view.*;
import android.view.GestureDetector.OnDoubleTapListener;
import android.view.GestureDetector.OnGestureListener;
import android.widget.LinearLayout;
-import com.android.gallery3d.app.Log;
import com.android.gallery3d.filtershow.FilterShowActivity;
import com.android.gallery3d.filtershow.PanelController;
import com.android.gallery3d.filtershow.cache.ImageLoader;
+import com.android.gallery3d.filtershow.cache.RenderingRequestCaller;
import com.android.gallery3d.filtershow.filters.ImageFilter;
import com.android.gallery3d.filtershow.presets.ImagePreset;
@@ -229,6 +230,10 @@ public class ImageShow extends View implements OnGestureListener,
*/
protected Matrix getImageToScreenMatrix(boolean reflectRotation) {
GeometryMetadata geo = getImagePreset().mGeoData;
+ if (geo == null || mImageLoader == null
+ || mImageLoader.getOriginalBounds() == null) {
+ return new Matrix();
+ }
Matrix m = geo.getOriginalToScreen(reflectRotation,
mImageLoader.getOriginalBounds().width(),
mImageLoader.getOriginalBounds().height(), getWidth(), getHeight());
@@ -291,7 +296,7 @@ public class ImageShow extends View implements OnGestureListener,
@Override
public void onDraw(Canvas canvas) {
-
+ MasterImage.getImage().setImageShowSize(getWidth(), getHeight());
canvas.save();
// TODO: center scale on gesture
float cx = canvas.getWidth()/2.0f;
@@ -315,6 +320,12 @@ public class ImageShow extends View implements OnGestureListener,
1.5f * mTextPadding, mPaint);
}
+ Bitmap partialPreview = MasterImage.getImage().getPartialImage();
+ if (partialPreview != null) {
+ Rect src = new Rect(0, 0, partialPreview.getWidth(), partialPreview.getHeight());
+ Rect dest = new Rect(0, 0, getWidth(), getHeight());
+ canvas.drawBitmap(partialPreview, src, dest, mPaint);
+ }
drawToast(canvas);
}
@@ -547,6 +558,7 @@ public class ImageShow extends View implements OnGestureListener,
Point translation = MasterImage.getImage().getTranslation();
translation.x = (int) (originalTranslation.x + translateX);
translation.y = (int) (originalTranslation.y + translateY);
+ MasterImage.getImage().setTranslation(translation);
}
} else if (!mOriginalDisabled && !mActivity.isShowingHistoryPanel()
&& (System.currentTimeMillis() - mTouchShowOriginalDate
@@ -682,4 +694,5 @@ public class ImageShow extends View implements OnGestureListener,
}
return false;
}
+
}