From ca4459d88fa75b988918c30a9d024a3534c7c1a2 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 17 Oct 2012 16:44:53 +0400 Subject: only block pager movement if width doesn't fit on current scale --- src/it/sephiroth/android/library/imagezoom/ImageViewTouch.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/it/sephiroth/android/library/imagezoom') diff --git a/src/it/sephiroth/android/library/imagezoom/ImageViewTouch.java b/src/it/sephiroth/android/library/imagezoom/ImageViewTouch.java index 1dd873c..f958bb9 100644 --- a/src/it/sephiroth/android/library/imagezoom/ImageViewTouch.java +++ b/src/it/sephiroth/android/library/imagezoom/ImageViewTouch.java @@ -34,7 +34,7 @@ public class ImageViewTouch extends ImageViewTouchBase { private OnImageViewTouchDoubleTapListener doubleTapListener; public interface OnScaleChangedListener { - public void onScaleChanged(float scale); + public void onScaleChanged(float scale, boolean widthFits); } protected OnScaleChangedListener mScaleChangedListener; @@ -113,7 +113,11 @@ public class ImageViewTouch extends ImageViewTouchBase { break; } if (mScaleChangedListener != null) { - mScaleChangedListener.onScaleChanged(mCurrentScaleFactor); + RectF bitmapRect = getBitmapRect(); + + boolean widthFits = getWidth() >= (bitmapRect.right - bitmapRect.left); + + mScaleChangedListener.onScaleChanged(mCurrentScaleFactor, widthFits); } return true; } -- cgit v1.2.3