11import "../core/document" ;
22import "../core/rebind" ;
33import "../event/dispatch" ;
4+ import "../event/drag" ;
45import "../event/event" ;
56import "../event/mouse" ;
67import "../event/touches" ;
@@ -100,6 +101,7 @@ d3.svg.brush = function() {
100101 resizingX = ! / ^ ( n | s ) $ / . test ( resizing ) && x ,
101102 resizingY = ! / ^ ( e | w ) $ / . test ( resizing ) && y ,
102103 dragging = eventTarget . classed ( "extent" ) ,
104+ dragRestore = d3_event_dragSuppress ( "brush" ) ,
103105 center ,
104106 origin = mouse ( ) ,
105107 offset ;
@@ -139,7 +141,6 @@ d3.svg.brush = function() {
139141 // Notify listeners.
140142 event_ ( { type : "brushstart" } ) ;
141143 brushmove ( ) ;
142- d3_eventCancel ( ) ;
143144
144145 function mouse ( ) {
145146 var touches = d3 . event . changedTouches ;
@@ -154,7 +155,7 @@ d3.svg.brush = function() {
154155 origin [ 1 ] -= extent [ 1 ] [ 1 ] ;
155156 dragging = 2 ;
156157 }
157- d3_eventCancel ( ) ;
158+ d3_eventPreventDefault ( ) ;
158159 }
159160 }
160161
@@ -163,7 +164,7 @@ d3.svg.brush = function() {
163164 origin [ 0 ] += extent [ 1 ] [ 0 ] ;
164165 origin [ 1 ] += extent [ 1 ] [ 1 ] ;
165166 dragging = 0 ;
166- d3_eventCancel ( ) ;
167+ d3_eventPreventDefault ( ) ;
167168 }
168169 }
169170
@@ -267,8 +268,8 @@ d3.svg.brush = function() {
267268 . on ( "keydown.brush" , null )
268269 . on ( "keyup.brush" , null ) ;
269270
271+ dragRestore ( ) ;
270272 event_ ( { type : "brushend" } ) ;
271- d3_eventCancel ( ) ;
272273 }
273274 }
274275
0 commit comments