diff options
author | Paul Westbrook <pwestbro@google.com> | 2012-09-21 10:55:26 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2012-09-21 10:55:26 -0700 |
commit | 29c041a3e41b93c7ffd8f29550df501f0b45ea02 (patch) | |
tree | df907e4020fd7a30a22815e58d2dfb9571d0a112 /photoviewer/src/com/android/ex/photo/views/PhotoView.java | |
parent | b060fe28670601e6885f6375a9c06124a5be7389 (diff) | |
parent | 88d18b9f331bcc39602fb4d883a88d9edd4ffa26 (diff) | |
download | android_frameworks_ex-29c041a3e41b93c7ffd8f29550df501f0b45ea02.tar.gz android_frameworks_ex-29c041a3e41b93c7ffd8f29550df501f0b45ea02.tar.bz2 android_frameworks_ex-29c041a3e41b93c7ffd8f29550df501f0b45ea02.zip |
am 88d18b9f: am 4054bd6d: Use gesture detector from support lib
* commit '88d18b9f331bcc39602fb4d883a88d9edd4ffa26':
Use gesture detector from support lib
Diffstat (limited to 'photoviewer/src/com/android/ex/photo/views/PhotoView.java')
-rw-r--r-- | photoviewer/src/com/android/ex/photo/views/PhotoView.java | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/photoviewer/src/com/android/ex/photo/views/PhotoView.java b/photoviewer/src/com/android/ex/photo/views/PhotoView.java index 4dd0a08..8575bb1 100644 --- a/photoviewer/src/com/android/ex/photo/views/PhotoView.java +++ b/photoviewer/src/com/android/ex/photo/views/PhotoView.java @@ -28,7 +28,10 @@ import android.graphics.Paint.Style; import android.graphics.Rect; import android.graphics.RectF; import android.graphics.drawable.BitmapDrawable; +import android.support.v4.view.GestureDetectorCompat; import android.util.AttributeSet; +import android.view.GestureDetector.OnGestureListener; +import android.view.GestureDetector.OnDoubleTapListener; import android.view.MotionEvent; import android.view.ScaleGestureDetector; import android.view.View; @@ -39,8 +42,8 @@ import com.android.ex.photo.fragments.PhotoViewFragment.HorizontallyScrollable; /** * Layout for the photo list view header. */ -public class PhotoView extends View implements GestureDetector.OnGestureListener, - GestureDetector.OnDoubleTapListener, ScaleGestureDetector.OnScaleGestureListener, +public class PhotoView extends View implements OnGestureListener, + OnDoubleTapListener, ScaleGestureDetector.OnScaleGestureListener, HorizontallyScrollable { /** Zoom animation duration; in milliseconds */ private final static long ZOOM_ANIMATION_DURATION = 300L; @@ -107,7 +110,7 @@ public class PhotoView extends View implements GestureDetector.OnGestureListener private int mCropSize; /** Gesture detector */ - private GestureDetector mGestureDetector; + private GestureDetectorCompat mGestureDetector; /** Gesture detector that detects pinch gestures */ private ScaleGestureDetector mScaleGetureDetector; /** An external click listener */ @@ -128,8 +131,6 @@ public class PhotoView extends View implements GestureDetector.OnGestureListener private float mMinScale; /** Maximum scale to limit scaling to, 0 means no limit. */ private float mMaxScale; - /** When {@code true}, prevents scale end gesture from falsely triggering a fling. */ - private boolean mFlingDebounce; // To support translation [i.e. panning] /** Runnable that can move the image */ @@ -258,10 +259,7 @@ public class PhotoView extends View implements GestureDetector.OnGestureListener @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { if (mTransformsEnabled) { - if (!mFlingDebounce) { - mTranslateRunnable.start(velocityX, velocityY); - } - mFlingDebounce = false; + mTranslateRunnable.start(velocityX, velocityY); } return true; } @@ -292,7 +290,6 @@ public class PhotoView extends View implements GestureDetector.OnGestureListener mDoubleTapDebounce = true; resetTransformations(); } - mFlingDebounce = true; } @Override @@ -934,12 +931,9 @@ public class PhotoView extends View implements GestureDetector.OnGestureListener sCropPaint.setColor(resources.getColor(R.color.photo_crop_highlight_color)); sCropPaint.setStyle(Style.STROKE); sCropPaint.setStrokeWidth(resources.getDimension(R.dimen.photo_crop_stroke_width)); - - sHasMultitouchDistinct = context.getPackageManager().hasSystemFeature( - PackageManager.FEATURE_TOUCHSCREEN_MULTITOUCH_DISTINCT); } - mGestureDetector = new GestureDetector(context, this, null, !sHasMultitouchDistinct); + mGestureDetector = new GestureDetectorCompat(context, this, null); mScaleGetureDetector = new ScaleGestureDetector(context, this); mScaleRunnable = new ScaleRunnable(this); mTranslateRunnable = new TranslateRunnable(this); |