@@ -252,6 +252,9 @@ function makeDragBox(gd, plotinfo, x, y, w, h, ns, ew) {
252
252
zb ,
253
253
corners ;
254
254
255
+ // zoom takes over minDrag, so it also has to take over gd._dragged
256
+ var zoomDragged ;
257
+
255
258
// collected changes to be made to the plot by relayout at the end
256
259
var updates = { } ;
257
260
@@ -266,6 +269,7 @@ function makeDragBox(gd, plotinfo, x, y, w, h, ns, ew) {
266
269
path0 = 'M0,0H' + pw + 'V' + ph + 'H0V0' ;
267
270
dimmed = false ;
268
271
zoomMode = 'xy' ;
272
+ zoomDragged = false ;
269
273
270
274
zb = makeZoombox ( zoomlayer , lum , xs , ys , path0 ) ;
271
275
@@ -341,6 +345,9 @@ function makeDragBox(gd, plotinfo, x, y, w, h, ns, ew) {
341
345
box . w = box . r - box . l ;
342
346
box . h = box . b - box . t ;
343
347
348
+ if ( zoomMode ) zoomDragged = true ;
349
+ gd . _dragged = zoomDragged ;
350
+
344
351
updateZoombox ( zb , corners , box , path0 , dimmed , lum ) ;
345
352
dimmed = true ;
346
353
}
@@ -458,12 +465,7 @@ function makeDragBox(gd, plotinfo, x, y, w, h, ns, ew) {
458
465
// no more scrolling is coming
459
466
redrawTimer = setTimeout ( function ( ) {
460
467
scrollViewBox = [ 0 , 0 , pw , ph ] ;
461
-
462
- var zoomMode ;
463
- if ( isSubplotConstrained ) zoomMode = 'xy' ;
464
- else zoomMode = ( ew ? 'x' : '' ) + ( ns ? 'y' : '' ) ;
465
-
466
- dragTail ( zoomMode ) ;
468
+ dragTail ( ) ;
467
469
} , REDRAWDELAY ) ;
468
470
469
471
e . preventDefault ( ) ;
0 commit comments