mirror of
https://github.com/konvajs/konva.git
synced 2026-01-02 20:42:42 +08:00
made a better fix for the mobile alternating drag and drop bug
This commit is contained in:
21
dist/kinetic-core.js
vendored
21
dist/kinetic-core.js
vendored
@@ -1971,7 +1971,7 @@ Kinetic.Stage.prototype = {
|
||||
}
|
||||
|
||||
// handle touchstart
|
||||
if(!isDragging && this.touchStart) {
|
||||
if(!isDragging && this.touchStart && !this.touchMove) {
|
||||
this.touchStart = false;
|
||||
this.tapStart = true;
|
||||
shape._handleEvent('touchstart', evt);
|
||||
@@ -2176,7 +2176,8 @@ else if(!isDragging && this.touchMove) {
|
||||
var tt = 1000 / throttle;
|
||||
|
||||
if(timeDiff >= tt) {
|
||||
that.mouseMove = true;
|
||||
that.mouseDown = false;
|
||||
that.mouseUp = false;
|
||||
that._handleStageEvent(evt);
|
||||
}
|
||||
}, false);
|
||||
@@ -2228,9 +2229,19 @@ else if(!isDragging && this.touchMove) {
|
||||
var tt = 1000 / throttle;
|
||||
|
||||
if(timeDiff >= tt) {
|
||||
evt.preventDefault();
|
||||
that.touchMove = true;
|
||||
that._handleStageEvent(evt);
|
||||
/*
|
||||
* need a setTimeout here because iOS
|
||||
* sometimes triggers touchStart and touchMove
|
||||
* simultaenously which causes eventd detection issues.
|
||||
* The timeout ensures that touchstart events
|
||||
* are handled first followed by touchmove
|
||||
*/
|
||||
setTimeout(function() {
|
||||
evt.preventDefault();
|
||||
that.touchEnd = false;
|
||||
that.touchMove = true;
|
||||
that._handleStageEvent(evt);
|
||||
}, 5);
|
||||
}
|
||||
}, false);
|
||||
|
||||
|
||||
4
dist/kinetic-core.min.js
vendored
4
dist/kinetic-core.min.js
vendored
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user