Skip to content

Commit d0c4b69

Browse files
committed
Pass the current drag event to dropCheckers
instead of using the actual pointer object as it has the modified coordinates from snap and restriction
1 parent 886e54c commit d0c4b69

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

interact.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1925,7 +1925,7 @@
19251925
var target = this.target,
19261926
dragEvent = new InteractEvent(this, event, 'drag', 'move', this.element),
19271927
draggableElement = this.element,
1928-
drop = this.getDrop(event, draggableElement);
1928+
drop = this.getDrop(dragEvent, event, draggableElement);
19291929

19301930
this.dropTarget = drop.dropzone;
19311931
this.dropElement = drop.element;
@@ -2309,7 +2309,7 @@
23092309
endEvent = new InteractEvent(this, event, 'drag', 'end', this.element);
23102310

23112311
var draggableElement = this.element,
2312-
drop = this.getDrop(event, draggableElement);
2312+
drop = this.getDrop(endEvent, event, draggableElement);
23132313

23142314
this.dropTarget = drop.dropzone;
23152315
this.dropElement = drop.element;
@@ -2417,7 +2417,7 @@
24172417
}
24182418
},
24192419

2420-
getDrop: function (event, dragElement) {
2420+
getDrop: function (dragEvent, event, dragElement) {
24212421
var validDrops = [];
24222422

24232423
if (dynamicDrop) {
@@ -2430,7 +2430,7 @@
24302430
currentElement = this.activeDrops.elements [j],
24312431
rect = this.activeDrops.rects [j];
24322432

2433-
validDrops.push(current.dropCheck(this.pointers[0], event, this.target, dragElement, currentElement, rect)
2433+
validDrops.push(current.dropCheck(dragEvent, event, this.target, dragElement, currentElement, rect)
24342434
? currentElement
24352435
: null);
24362436
}
@@ -4072,21 +4072,21 @@
40724072
return this.options.drop;
40734073
},
40744074

4075-
dropCheck: function (pointer, event, draggable, draggableElement, dropElement, rect) {
4075+
dropCheck: function (dragEvent, event, draggable, draggableElement, dropElement, rect) {
40764076
var dropped = false;
40774077

40784078
// if the dropzone has no rect (eg. display: none)
40794079
// call the custom dropChecker or just return false
40804080
if (!(rect = rect || this.getRect(dropElement))) {
40814081
return (this.options.drop.checker
4082-
? this.options.drop.checker(pointer, event, dropped, this, dropElement, draggable, draggableElement)
4082+
? this.options.drop.checker(dragEvent, event, dropped, this, dropElement, draggable, draggableElement)
40834083
: false);
40844084
}
40854085

40864086
var dropOverlap = this.options.drop.overlap;
40874087

40884088
if (dropOverlap === 'pointer') {
4089-
var page = getPageXY(pointer),
4089+
var page = getPageXY(dragEvent),
40904090
origin = getOriginXY(draggable, draggableElement),
40914091
horizontal,
40924092
vertical;
@@ -4118,7 +4118,7 @@
41184118
}
41194119

41204120
if (this.options.drop.checker) {
4121-
dropped = this.options.drop.checker(pointer, event, dropped, this, dropElement, draggable, draggableElement);
4121+
dropped = this.options.drop.checker(dragEvent, event, dropped, this, dropElement, draggable, draggableElement);
41224122
}
41234123

41244124
return dropped;

0 commit comments

Comments
 (0)