@@ -28,6 +28,7 @@ var helpers = require('./helpers');
28
28
var anchorUtils = require ( './anchor_utils' ) ;
29
29
30
30
var SHOWISOLATETIP = true ;
31
+ var DBLCLICKDELAY = interactConstants . DBLCLICKDELAY ;
31
32
32
33
module . exports = function draw ( gd ) {
33
34
var fullLayout = gd . _fullLayout ;
@@ -335,18 +336,15 @@ module.exports = function draw(gd) {
335
336
} else {
336
337
var traces = [ ] ,
337
338
clickedTrace ;
338
- fullLayout . _infolayer . selectAll ( 'g.traces' ) . each ( function ( ) { d3 . select ( this ) . call ( function ( ) { traces . push ( this ) ; } ) ; } ) ;
339
- for ( var i = 0 ; i < traces . length ; i ++ ) {
340
- var tracei = traces [ i ] ;
341
- var p = tracei [ 0 ] [ 0 ] . getBoundingClientRect ( ) ;
342
- if ( e . clientX >= p . left && e . clientX <= p . right && e . clientY >= p . top && e . clientY <= p . bottom ) {
343
- clickedTrace = tracei ;
344
- break ;
345
- }
346
- }
347
- if ( clickedTrace ) {
339
+ traces = fullLayout . _infolayer . selectAll ( 'g.traces' ) . filter ( function ( ) {
340
+ var bbox = this . getBoundingClientRect ( ) ;
341
+ return ( e . clientX >= bbox . left && e . clientX <= bbox . right &&
342
+ e . clientY >= bbox . top && e . clientY <= bbox . bottom ) ;
343
+ } ) [ 0 ] ;
344
+ if ( traces . length > 0 ) {
345
+ clickedTrace = d3 . select ( traces [ 0 ] ) ;
348
346
if ( numClicks === 1 ) {
349
- legend . _clickTimeout = setTimeout ( function ( ) { handleClick ( clickedTrace , gd , numClicks ) ; } , 300 ) ;
347
+ legend . _clickTimeout = setTimeout ( function ( ) { handleClick ( clickedTrace , gd , numClicks ) ; } , DBLCLICKDELAY ) ;
350
348
} else if ( numClicks === 2 ) {
351
349
if ( legend . _clickTimeout ) {
352
350
clearTimeout ( legend . _clickTimeout ) ;
@@ -422,8 +420,7 @@ function drawTexts(g, gd) {
422
420
423
421
function setupTraceToggle ( g , gd ) {
424
422
var newMouseDownTime ,
425
- numClicks = 1 ,
426
- DBLCLICKDELAY = interactConstants . DBLCLICKDELAY ;
423
+ numClicks = 1 ;
427
424
428
425
var traceToggle = g . selectAll ( 'rect' )
429
426
. data ( [ 0 ] ) ;
0 commit comments