@@ -520,7 +520,14 @@ function getTraceWidth(d, legendObj, textGap) {
520520}
521521
522522function clickOrDoubleClick ( gd , legend , legendItem , numClicks , evt ) {
523+ var fullLayout = gd . _fullLayout ;
523524 var trace = legendItem . data ( ) [ 0 ] [ 0 ] . trace ;
525+ var legendId = trace . legend || 'legend' ;
526+ var legendObj = fullLayout [ legendId ] ;
527+
528+ var itemClick = legendObj . itemclick ;
529+ var itemDoubleClick = legendObj . itemdoubleclick ;
530+
524531 var evtData = {
525532 event : evt ,
526533 node : legendItem . node ( ) ,
@@ -531,7 +538,7 @@ function clickOrDoubleClick(gd, legend, legendItem, numClicks, evt) {
531538 frames : gd . _transitionData . _frames ,
532539 config : gd . _context ,
533540 fullData : gd . _fullData ,
534- fullLayout : gd . _fullLayout
541+ fullLayout : fullLayout
535542 } ;
536543
537544 if ( trace . _group ) {
@@ -545,15 +552,17 @@ function clickOrDoubleClick(gd, legend, legendItem, numClicks, evt) {
545552 if ( clickVal === false ) return ;
546553 legend . _clickTimeout = setTimeout ( function ( ) {
547554 if ( ! gd . _fullLayout ) return ;
548- handleClick ( legendItem , gd , numClicks ) ;
555+ if ( itemClick ) handleClick ( legendItem , gd , legendObj , itemClick ) ;
549556 } , gd . _context . doubleClickDelay ) ;
550557 } else if ( numClicks === 2 ) {
551558 if ( legend . _clickTimeout ) clearTimeout ( legend . _clickTimeout ) ;
552559 gd . _legendMouseDownTime = 0 ;
553560
554561 var dblClickVal = Events . triggerHandler ( gd , 'plotly_legenddoubleclick' , evtData ) ;
555562 // Activate default double click behaviour only when both single click and double click values are not false
556- if ( dblClickVal !== false && clickVal !== false ) handleClick ( legendItem , gd , numClicks ) ;
563+ if ( dblClickVal !== false && clickVal !== false && itemDoubleClick ) {
564+ handleClick ( legendItem , gd , legendObj , itemDoubleClick ) ;
565+ }
557566 }
558567}
559568
@@ -1136,4 +1145,3 @@ function getYanchor(legendObj) {
11361145 Lib . isMiddleAnchor ( legendObj ) ? 'middle' :
11371146 'top' ;
11381147}
1139-
0 commit comments