Merge pull request #244 from msalsbery/Pinch-Zoom-Fix

Pinch zoom fix
This commit is contained in:
iangilman 2013-10-08 10:23:10 -07:00
commit 7d8fb803ef
2 changed files with 9 additions and 6 deletions

View File

@ -20,6 +20,7 @@ OPENSEADRAGON CHANGELOG
* MouseTracker now passes the original event objects to its handler methods (#23)
* MouseTracker now supports an optional 'moveHandler' method for tracking mousemove events (#215)
* Fixed: Element-relative mouse coordinates now correct if the element and/or page is scrolled (using new OpenSeadragon.getElementOffset() method) (#131)
* Fixed: Pinch zoom event issue, regressive issue from previous event system changes (#244)
* Added IIIF Image API 1.1 Tile Source (#230)
* Fixed: Touch event issue where no canvas-click events were being raised (#240)
* Check that zoom reference point is valid before using it in zoomTo and zoomBy (#247)

View File

@ -1229,13 +1229,15 @@
if ( Math.abs( THIS[ tracker.hash ].lastPinchDelta - pinchDelta ) > 75 ) {
//$.console.debug( "pinch delta : " + pinchDelta + " | previous : " + THIS[ tracker.hash ].lastPinchDelta);
// Adjust the original event enough to simulate a mouse wheel scroll
event.shiftKey = event.shiftKey || false;
event.pageX = THIS[ tracker.hash ].pinchMidpoint.x;
event.pageY = THIS[ tracker.hash ].pinchMidpoint.y;
event.detail = ( THIS[ tracker.hash ].lastPinchDelta > pinchDelta ) ? 1 : -1;
// Simulate a mouse wheel scroll event
var simulatedEvent = {
shiftKey: event.shiftKey || false,
pageX: THIS[ tracker.hash ].pinchMidpoint.x,
pageY: THIS[ tracker.hash ].pinchMidpoint.y,
detail: ( THIS[ tracker.hash ].lastPinchDelta > pinchDelta ) ? 1 : -1
};
onMouseWheelSpin( tracker, event, true );
onMouseWheelSpin( tracker, simulatedEvent, true );
THIS[ tracker.hash ].lastPinchDelta = pinchDelta;
}