From 64096cbc67c345e55109ed6c0a5e84cd3b90874e Mon Sep 17 00:00:00 2001 From: Quincy Morgan Date: Thu, 28 May 2020 14:21:22 -0400 Subject: [PATCH] Handle pointercancel events in behaviorDrag --- modules/behavior/drag.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/modules/behavior/drag.js b/modules/behavior/drag.js index 12435b3d7..898f689be 100644 --- a/modules/behavior/drag.js +++ b/modules/behavior/drag.js @@ -83,7 +83,7 @@ export function behaviorDrag() { d3_select(window) .on(_pointerPrefix + 'move.drag', pointermove) - .on(_pointerPrefix + 'up.drag', pointerup, true); + .on(_pointerPrefix + 'up.drag pointercancel.drag', pointerup, true); if (_origin) { offset = _origin.apply(_target, arguments); @@ -136,13 +136,12 @@ export function behaviorDrag() { if (started) { _event({ type: 'end' }); - d3_event.stopPropagation(); d3_event.preventDefault(); } d3_select(window) .on(_pointerPrefix + 'move.drag', null) - .on(_pointerPrefix + 'up.drag', null); + .on(_pointerPrefix + 'up.drag pointercancel.drag', null); selectEnable(); } @@ -199,7 +198,7 @@ export function behaviorDrag() { behavior.cancel = function() { d3_select(window) .on(_pointerPrefix + 'move.drag', null) - .on(_pointerPrefix + 'up.drag', null); + .on(_pointerPrefix + 'up.drag pointercancel.drag', null); return behavior; };