summaryrefslogtreecommitdiffstats
path: root/src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java
diff options
context:
space:
mode:
authorJohn Hoford <hoford@google.com>2013-02-21 15:18:37 -0800
committerJohn Hoford <hoford@google.com>2013-02-21 15:19:49 -0800
commitc67da3cdf3cc655a384d9d591fee051fdafb4630 (patch)
treed94130e4cf16a89b1f89881eedf2fdb710b749ba /src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java
parent8ae11144fc1fc15062297d03fb86d6bfb443953a (diff)
downloadandroid_packages_apps_Snap-c67da3cdf3cc655a384d9d591fee051fdafb4630.tar.gz
android_packages_apps_Snap-c67da3cdf3cc655a384d9d591fee051fdafb4630.tar.bz2
android_packages_apps_Snap-c67da3cdf3cc655a384d9d591fee051fdafb4630.zip
fix draw and ellipse to handle pinch to zoom
Change-Id: I8af9b37dcd98425959742a4142756963363d1cec
Diffstat (limited to 'src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java')
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java37
1 files changed, 24 insertions, 13 deletions
diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java b/src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java
index 729ac7f41..a51d10276 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java
@@ -20,6 +20,7 @@ import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.util.AttributeSet;
+import android.util.Log;
import android.view.MotionEvent;
import com.android.gallery3d.filtershow.editors.EditorVignette;
@@ -48,16 +49,28 @@ public class ImageVignette extends ImageShow {
@Override
public boolean onTouchEvent(MotionEvent event) {
int mask = event.getActionMasked();
- if (MotionEvent.ACTION_UP == mask) {
- mActiveHandle = -1;
- }
- if (MotionEvent.ACTION_DOWN == mask && event.getPointerCount() == 1) {
- mActiveHandle = mElipse.getCloseHandle(event.getX(), event.getY());
- }
- if (mActiveHandle == -1 || event.getPointerCount() > 1) {
- mActiveHandle = -1;
-
- return super.onTouchEvent(event);
+ if (mActiveHandle == -1) {
+ if (MotionEvent.ACTION_DOWN != mask) {
+ return super.onTouchEvent(event);
+ }
+ if (event.getPointerCount() == 1) {
+ mActiveHandle = mElipse.getCloseHandle(event.getX(), event.getY());
+ }
+ if (mActiveHandle == -1) {
+ return super.onTouchEvent(event);
+ }
+ } else {
+ switch (mask) {
+ case MotionEvent.ACTION_UP:
+ mActiveHandle = -1;
+ break;
+ case MotionEvent.ACTION_DOWN:
+ if (event.getPointerCount() == 1) {
+ Log.v(LOGTAG, "################### ACTION_DOWN odd " + mActiveHandle
+ + " touches=1");
+ }
+ break;
+ }
}
float x = event.getX();
float y = event.getY();
@@ -121,9 +134,7 @@ public class ImageVignette extends ImageShow {
@Override
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
- if (mElipse.isUndefined()) {
- setRepresentation(mVignetteRep);
- }
+ setRepresentation(mVignetteRep);
mElipse.draw(canvas);
}