From 7eddd9754ed0b6588a809ae61680498890b96953 Mon Sep 17 00:00:00 2001 From: drdev Date: Wed, 14 May 2014 23:08:07 +0000 Subject: [PATCH] Fix zoom amount --- forge-gui-mobile/src/forge/toolbox/FGestureAdapter.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/forge-gui-mobile/src/forge/toolbox/FGestureAdapter.java b/forge-gui-mobile/src/forge/toolbox/FGestureAdapter.java index 9a0cf8afeef..c4fe174fde1 100644 --- a/forge-gui-mobile/src/forge/toolbox/FGestureAdapter.java +++ b/forge-gui-mobile/src/forge/toolbox/FGestureAdapter.java @@ -27,8 +27,10 @@ public abstract class FGestureAdapter extends InputAdapter { private boolean inTapSquare, pressed, longPressed, longPressHandled, quickTapped, pinching, panning; private final VelocityTracker tracker = new VelocityTracker(); - Vector2 pointer1 = new Vector2(); + private final Vector2 pointer1 = new Vector2(); private final Vector2 pointer2 = new Vector2(); + private final Vector2 prevPointer1 = new Vector2(); + private final Vector2 prevPointer2 = new Vector2(); private final Vector2 initialPointer1 = new Vector2(); private final Vector2 initialPointer2 = new Vector2(); @@ -136,16 +138,18 @@ public abstract class FGestureAdapter extends InputAdapter { if (pointer > 1) { return false; } if (pointer == 0) { + prevPointer1.set(pointer1); pointer1.set(x, y); } else { + prevPointer2.set(pointer2); pointer2.set(x, y); } // handle pinch zoom if (pinching) { Vector2 focalPoint = Utils.getIntersection(pointer1, pointer2, initialPointer1, initialPointer2); - return zoom(focalPoint.x, focalPoint.y, pointer1.dst(pointer2) - initialPointer1.dst(initialPointer2)); + return zoom(focalPoint.x, focalPoint.y, pointer1.dst(pointer2) - prevPointer1.dst(prevPointer2)); } // update tracker