summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2012-10-17 16:44:53 +0400
committerAndrew Dolgov <[email protected]>2012-10-17 16:44:53 +0400
commitca4459d88fa75b988918c30a9d024a3534c7c1a2 (patch)
treefd69927a5f68c5b2d042d68f8afe4c2b0fbbc146 /src
parent2e35ef83788246df5526dd0ddc762dc8f799239d (diff)
only block pager movement if width doesn't fit on current scale
Diffstat (limited to 'src')
-rw-r--r--src/it/sephiroth/android/library/imagezoom/ImageViewTouch.java8
-rw-r--r--src/org/fox/ttcomics/ComicFragment.java4
2 files changed, 8 insertions, 4 deletions
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;
}
diff --git a/src/org/fox/ttcomics/ComicFragment.java b/src/org/fox/ttcomics/ComicFragment.java
index 2221b3a..eb40627 100644
--- a/src/org/fox/ttcomics/ComicFragment.java
+++ b/src/org/fox/ttcomics/ComicFragment.java
@@ -86,11 +86,11 @@ public class ComicFragment extends Fragment {
image.setImageBitmap(loadImage(pager.getArchive(), m_page));
image.setOnScaleChangedListener(new ImageViewTouch.OnScaleChangedListener() {
@Override
- public void onScaleChanged(float scale) {
+ public void onScaleChanged(float scale, boolean widthFits) {
ViewPager pager = (ViewPager) getActivity().findViewById(R.id.comics_pager);
if (pager != null) {
- pager.setPagingEnabled(scale - 1.0f < 0.01);
+ pager.setPagingEnabled(widthFits);
}
}
});