Skip to content

Commit

Permalink
Downgrade hammer.js to 2.0.1 because of Firefox pan issue
Browse files Browse the repository at this point in the history
  • Loading branch information
waynegm committed Aug 8, 2016
1 parent 481d285 commit d0aeab3
Show file tree
Hide file tree
Showing 6 changed files with 43 additions and 25 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ The plugin is known to work with the configuration described below:
* [jQuery](http://jquery.com/) (>=1.8)
* [jQuery UI](http://jqueryui.com/) (>=1.8)
* [Widget Factory](http://api.jqueryui.com/jQuery.widget/)
* [Hammer.js](http://hammerjs.github.io/) (>=2.08)
* [Hammer.js](http://hammerjs.github.io/) (=2.01)
* [jquery.hammer.js](https://github.com/hammerjs/jquery.hammer.js) (>=2.0.0)
* [Zoetrope](https://github.com/benplum/Zoetrope) (>=3.0)
* [jquery-mousewheel](https://github.com/brandonaaron/jquery-mousewheel) (>=3.0)
Expand Down
2 changes: 0 additions & 2 deletions demo.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@

<script type="text/javascript" src="libs/jquery/jquery.js"></script>
<script type="text/javascript" src="libs/jquery/jquery-ui.js"></script>
<script type="text/javascript" src="libs/jquery.fs.zoetrope.min.js"></script>
<script type="text/javascript" src="libs/hammer.min.js"></script>
<script type="text/javascript" src="libs/jquery.hammer.js"></script>
<script type="text/javascript" src="libs/jquery.mousewheel.min.js"></script>
Expand Down Expand Up @@ -51,7 +50,6 @@ <h2>Centred in a div - Dynamic Width</h2>
dragable: false
});
$img.imgViewer("option", "onClick", test);
$img.imgViewer("option","zoomable", false);
if ($img.imgViewer("option","zoomable"))
$toggleZ.text("Zoom Off");
else
Expand Down
2 changes: 1 addition & 1 deletion imgViewer.jquery.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"dependencies": {
"jquery": ">=1.8",
"jquery-ui": ">=1.8",
"hammer.js": ">=2.0.8",
"hammer.js": "=2.0.1",
"jquery.hammer.js": ">=2.0.0",
"zoetrope": ">=3.0",
"jquery-mousewheel": ">=3.0"
Expand Down
10 changes: 6 additions & 4 deletions libs/hammer.min.js

Large diffs are not rendered by default.

18 changes: 5 additions & 13 deletions libs/jquery.hammer.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,8 @@
(function(factory) {
if (typeof define === 'function' && define.amd) {
define(['jquery', 'hammerjs'], factory);
} else if (typeof exports === 'object') {
factory(require('jquery'), require('hammerjs'));
} else {
factory(jQuery, Hammer);
}
}(function($, Hammer) {
(function($, Hammer, dataAttr) {
function hammerify(el, options) {
var $el = $(el);
if(!$el.data("hammer")) {
$el.data("hammer", new Hammer($el[0], options));
if(!$el.data(dataAttr)) {
$el.data(dataAttr, new Hammer($el[0], options));
}
}

Expand All @@ -24,10 +16,10 @@
Hammer.Manager.prototype.emit = (function(originalEmit) {
return function(type, data) {
originalEmit.call(this, type, data);
$(this.element).trigger({
jQuery(this.element).triggerHandler({
type: type,
gesture: data
});
};
})(Hammer.Manager.prototype.emit);
}));
})(jQuery, Hammer, "hammer");
34 changes: 30 additions & 4 deletions src/imgViewer.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
// the pixel coordinate of the original image at the center of the viewport
self.vCenter = {};
// a flag used to decide if a mouse click is part of a drag or a proper click
self.dragging = false;
self.drag = false;
self.pinch = false;
// a flag used to check the target image has loaded
self.ready = false;
Expand Down Expand Up @@ -217,13 +217,37 @@
self.update();
}
}
$zimg.on("pan", function(ev) {
ev.preventDefault();
console.log(ev.type);
if (!self.drag) {
self.drag = true;
self.dragXorg = self.vCenter.x;
self.dragYorg = self.vCenter.y;
startRenderLoop();
} else {
self.vCenter.x = self.dragXorg - ev.gesture.deltaX/self.options.zoom;
self.vCenter.y = self.dragYorg - ev.gesture.deltaY/self.options.zoom;
}
});

$zimg.on( "panend", function(ev) {
ev.preventDefault();
if (self.drag) {
self.drag = false;
stopRenderLoop();
self.update();
}
});

$zimg.on( "panstart" , function(ev) {
/* $zimg.on( "panstart" , function(ev) {
ev.preventDefault();
if (!self.pinch) {
self.drag = true;
self.dragXorg = self.vCenter.x;
self.dragYorg = self.vCenter.y;
startRenderLoop();
console.log("panstart");
}
});
Expand All @@ -232,16 +256,19 @@
if (!self.pinch) {
self.vCenter.x = self.dragXorg - ev.gesture.deltaX/self.options.zoom;
self.vCenter.y = self.dragYorg - ev.gesture.deltaY/self.options.zoom;
console.log("panmove");
}
});
$zimg.on( "panend", function(ev) {
ev.preventDefault();
if (!self.pinch) {
self.drag = false;
stopRenderLoop();
self.update();
}
});
*/
},
/*
* Unbind events
Expand All @@ -259,8 +286,7 @@
_unbind_drag_events: function() {
var self = this;
var $zimg = $(self.zimg);
$zimg.off("panstart");
$zimg.off("panmove");
$zimg.off("pan");
$zimg.off("panend");
},

Expand Down

0 comments on commit d0aeab3

Please sign in to comment.