@@ -251,7 +251,7 @@ function drawOne(gd, opts) {
251251 const anyVisible = gd . _fullData . concat ( shapes ) . some ( function ( item ) {
252252 const legendAttr = item . legend || 'legend' ;
253253 var inThisLegend = Array . isArray ( legendAttr )
254- ? legendAttr . some ( function ( legend ) { return ( legend || 'legend' ) === legendId ; } )
254+ ? legendAttr . includes ( legendId )
255255 : legendAttr === legendId ;
256256 return inThisLegend && item . visible === true ;
257257 } ) ;
@@ -515,13 +515,11 @@ function getTraceWidth(d, legendObj, textGap) {
515515}
516516
517517function clickOrDoubleClick ( gd , legend , legendItem , numClicks , evt ) {
518- var fullLayout = gd . _fullLayout ;
518+ var fullLayout = gd . _fullLayout ;
519519 var trace = legendItem . data ( ) [ 0 ] [ 0 ] . trace ;
520- var legendId = trace . legend || 'legend' ;
521- var legendObj = fullLayout [ legendId ] ;
522520
523- var itemClick = legendObj . itemclick ;
524- var itemDoubleClick = legendObj . itemdoubleclick ;
521+ var itemClick = legend . itemclick ;
522+ var itemDoubleClick = legend . itemdoubleclick ;
525523
526524 var evtData = {
527525 event : evt ,
@@ -547,7 +545,7 @@ function clickOrDoubleClick(gd, legend, legendItem, numClicks, evt) {
547545 if ( clickVal === false ) return ;
548546 legend . _clickTimeout = setTimeout ( function ( ) {
549547 if ( ! gd . _fullLayout ) return ;
550- if ( itemClick ) handleItemClick ( legendItem , gd , legendObj , itemClick ) ;
548+ if ( itemClick ) handleItemClick ( legendItem , gd , legend , itemClick ) ;
551549 } , gd . _context . doubleClickDelay ) ;
552550 } else if ( numClicks === 2 ) {
553551 if ( legend . _clickTimeout ) clearTimeout ( legend . _clickTimeout ) ;
@@ -556,7 +554,7 @@ function clickOrDoubleClick(gd, legend, legendItem, numClicks, evt) {
556554 var dblClickVal = Events . triggerHandler ( gd , 'plotly_legenddoubleclick' , evtData ) ;
557555 // Activate default double click behaviour only when both single click and double click values are not false
558556 if ( dblClickVal !== false && clickVal !== false && itemDoubleClick ) {
559- handleItemClick ( legendItem , gd , legendObj , itemDoubleClick ) ;
557+ handleItemClick ( legendItem , gd , legend , itemDoubleClick ) ;
560558 }
561559 }
562560}
0 commit comments