Skip to content

Commit ab633e2

Browse files
committed
Add 'dropmove' event type
interact('.dropzone') // enable draggables to be dropped into this .dropzone(true) // listen for drop related events .on('dropmove', function (event) { // Do something here }); the event object looks like { target: dropzoneElement, dragmove: dragmoveEvent, type: 'dropmove' ... }
1 parent d5a6062 commit ab633e2

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

interact.js

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -375,6 +375,7 @@
375375
'dragleave',
376376
'dropactivate',
377377
'dropdeactivate',
378+
'dropmove',
378379
'drop',
379380
'resizestart',
380381
'resizemove',
@@ -1252,6 +1253,7 @@
12521253
dragEnterEvent = null,
12531254
dropActivateEvent = null,
12541255
dropDectivateEvent = null,
1256+
dropMoveEvent = null,
12551257
dropEvent = null;
12561258

12571259
if (dropElement !== prevDropElement) {
@@ -1276,12 +1278,22 @@
12761278
if (dragEvent.type === 'dragend' && !starting) {
12771279
dropDectivateEvent = new InteractEvent(pointerEvent, 'drop', 'deactivate', null, dragEvent.target);
12781280
}
1281+
if (dragEvent.type === 'dragmove' && dropTarget) {
1282+
dropMoveEvent = {
1283+
target : dropElement,
1284+
relatedTarget: dragEvent.target,
1285+
dragmove : dragEvent,
1286+
type : 'dropmove',
1287+
timeStamp : dragEvent.timeStamp
1288+
};
1289+
}
12791290

12801291
return {
1281-
leave : dragLeaveEvent,
12821292
enter : dragEnterEvent,
1293+
leave : dragLeaveEvent,
12831294
activate : dropActivateEvent,
12841295
deactivate : dropDectivateEvent,
1296+
move : dropMoveEvent,
12851297
drop : dropEvent
12861298
};
12871299
}
@@ -2438,6 +2450,7 @@
24382450
}
24392451
if (dropEvents.leave) { prevDropTarget.fire(dropEvents.leave); }
24402452
if (dropEvents.enter) { dropTarget.fire(dropEvents.enter); }
2453+
if (dropEvents.move ) { dropTarget.fire(dropEvents.move ); }
24412454

24422455
prevDropTarget = dropTarget;
24432456
prevDropElement = dropElement;
@@ -3027,13 +3040,15 @@
30273040
dropactivate = phases.ondropactivate || phases.onDropActivate || phases.dropactivate,
30283041
dropdeactivate = phases.ondropdeactivate || phases.onDropDeactivate || phases.dropdeactivate,
30293042
dragenter = phases.ondragenter || phases.onDropEnter || phases.dragenter,
3030-
dragleave = phases.ondragleave || phases.onDropLeave || phases.dragleave;
3043+
dragleave = phases.ondragleave || phases.onDropLeave || phases.dragleave,
3044+
dragmove = phases.ondragmove || phases.onDropMove || phases.dragmove;
30313045

30323046
if (typeof drop === 'function') { this.ondrop = drop; }
30333047
if (typeof dropactivate === 'function') { this.ondropactivate = dropactivate; }
30343048
if (typeof dropdeactivate === 'function') { this.ondropdeactivate = dropdeactivate; }
30353049
if (typeof dragenter === 'function') { this.ondragenter = dragenter; }
30363050
if (typeof dragleave === 'function') { this.ondragleave = dragleave; }
3051+
if (typeof dragmove === 'function') { this.ondragmove = dragmove; }
30373052
}
30383053
else {
30393054
var start = phases.onstart || phases.onStart || phases.start,

0 commit comments

Comments
 (0)