From 88a6c0d89bfc8870b4c83fea521a47341516c463 Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Tue, 20 Jan 2026 15:06:57 -0500 Subject: [PATCH 01/10] Fix bug where `groupclick`: `toggleitem` doesn't work when there are multiple legends --- src/components/legend/handle_click.js | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/components/legend/handle_click.js b/src/components/legend/handle_click.js index 6c2b7b81b45..5abb3b9d9e4 100644 --- a/src/components/legend/handle_click.js +++ b/src/components/legend/handle_click.js @@ -11,9 +11,16 @@ module.exports = function handleClick(g, gd, numClicks) { if(gd._dragged || gd._editing) return; - var itemClick = fullLayout.legend.itemclick; - var itemDoubleClick = fullLayout.legend.itemdoubleclick; - var groupClick = fullLayout.legend.groupclick; + + var legendItem = g.data()[0][0]; + if(legendItem.groupTitle && legendItem.noClick) return; + + var legendId = legendItem.trace.legend || 'legend'; + var legendObj = fullLayout[legendId]; + + var itemClick = legendObj.itemclick; + var itemDoubleClick = legendObj.itemdoubleclick; + var groupClick = legendObj.groupclick; if(numClicks === 1 && itemClick === 'toggle' && itemDoubleClick === 'toggleothers' && SHOWISOLATETIP && gd.data && gd._context.showTips @@ -35,9 +42,6 @@ module.exports = function handleClick(g, gd, numClicks) { fullLayout.hiddenlabels.slice() : []; - var legendItem = g.data()[0][0]; - if(legendItem.groupTitle && legendItem.noClick) return; - var fullData = gd._fullData; var shapesWithLegend = (fullLayout.shapes || []).filter(function(d) { return d.showlegend; }); var allLegendItems = fullData.concat(shapesWithLegend); From b2ef7116827408db22bee1375116a0f305eb293e Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Tue, 20 Jan 2026 15:07:13 -0500 Subject: [PATCH 02/10] Add `titleclick` and `titledoubleclick` attributes --- src/components/legend/attributes.js | 24 ++++++++++++++++++++++++ src/components/legend/defaults.js | 3 +++ 2 files changed, 27 insertions(+) diff --git a/src/components/legend/attributes.js b/src/components/legend/attributes.js index 0d7f0d49e9f..b4a60a474f5 100644 --- a/src/components/legend/attributes.js +++ b/src/components/legend/attributes.js @@ -176,6 +176,30 @@ module.exports = { '*togglegroup* toggles the visibility of all items in the same legendgroup as the item clicked on the graph.' ].join(' ') }, + titleclick: { + valType: 'enumerated', + values: ['toggle', 'toggleothers', false], + dflt: 'toggle', + editType: 'legend', + description: [ + 'Determines the behavior on legend title click.', + '*toggle* toggles the visibility of all items in the legend.', + '*toggleothers* toggles the visibility of all other legends.', + '*false* disables legend title click interactions.' + ].join(' ') + }, + titledoubleclick: { + valType: 'enumerated', + values: ['toggle', 'toggleothers', false], + dflt: 'toggleothers', + editType: 'legend', + description: [ + 'Determines the behavior on legend title double-click.', + '*toggle* toggles the visibility of all items in the legend.', + '*toggleothers* toggles the visibility of all other legends.', + '*false* disables legend title double-click interactions.' + ].join(' ') + }, x: { valType: 'number', editType: 'legend', diff --git a/src/components/legend/defaults.js b/src/components/legend/defaults.js index f8be07461f4..0f4191167b9 100644 --- a/src/components/legend/defaults.js +++ b/src/components/legend/defaults.js @@ -238,6 +238,9 @@ function groupDefaults(legendId, layoutIn, layoutOut, fullData) { }); Lib.coerceFont(coerce, 'title.font', dfltTitleFont); + + coerce('titleclick'); + coerce('titledoubleclick'); } } From cdb570a3f283a6839dd9cca5ab3ebd5b0a5f242a Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Wed, 28 Jan 2026 14:58:52 -0500 Subject: [PATCH 03/10] Add handleTitleClick function for toggling visibility via legend title --- src/components/legend/handle_click.js | 63 ++++++++++++++++++++++++++- 1 file changed, 62 insertions(+), 1 deletion(-) diff --git a/src/components/legend/handle_click.js b/src/components/legend/handle_click.js index 5abb3b9d9e4..9a40b08980f 100644 --- a/src/components/legend/handle_click.js +++ b/src/components/legend/handle_click.js @@ -6,7 +6,7 @@ var pushUnique = Lib.pushUnique; var SHOWISOLATETIP = true; -module.exports = function handleClick(g, gd, numClicks) { +exports.handleClick = function handleClick(g, gd, numClicks) { var fullLayout = gd._fullLayout; if(gd._dragged || gd._editing) return; @@ -273,3 +273,64 @@ module.exports = function handleClick(g, gd, numClicks) { } } }; + +exports.handleTitleClick = function handleTitleClick(gd, legendObj, mode) { + var fullLayout = gd._fullLayout; + var fullData = gd._fullData; + var legendId = legendObj._id || 'legend'; + var shapesWithLegend = (fullLayout.shapes || []).filter(function(d) { return d.showlegend; }); + var allLegendItems = fullData.concat(shapesWithLegend); + + function isInLegend(item) { + return (item.legend || 'legend') === legendId; + } + + var toggleThisLegend; + var toggleOtherLegends; + + if(mode === 'toggle') { + // If any item is visible in this legend, hide all. If all are hidden, show all + var anyVisibleHere = allLegendItems.some(function(item) { + return isInLegend(item) && item.visible === true; + }); + + toggleThisLegend = !anyVisibleHere; + toggleOtherLegends = null; + } else { + // isolate this legend or set all legends to visible + var anyVisibleElsewhere = allLegendItems.some(function(item) { + return !isInLegend(item) && item.visible === true && item.showlegend !== false; + }); + + toggleThisLegend = true; + toggleOtherLegends = !anyVisibleElsewhere; + } + + var dataUpdate = { visible: [] }; + var dataIndices = []; + var updatedShapes = (fullLayout.shapes || []).map(function(d) { return d._input; }); + var shapesUpdated = false; + + for(var i = 0; i < allLegendItems.length; i++) { + var item = allLegendItems[i]; + var shouldShow = isInLegend(item) ? toggleThisLegend : toggleOtherLegends; + var newVis = shouldShow ? true : 'legendonly'; + + // Only update if the item is visible and the visibility is different from the new visibility + if ((item.visible !== false) && (shouldShow !== null) && (item.visible !== newVis)) { + if(item._isShape) { + updatedShapes[item._index].visible = newVis; + shapesUpdated = true; + } else { + dataIndices.push(item.index); + dataUpdate.visible.push(newVis); + } + } + } + + if(shapesUpdated) { + Registry.call('_guiUpdate', gd, dataUpdate, {shapes: updatedShapes}, dataIndices); + } else if(dataIndices.length) { + Registry.call('_guiRestyle', gd, dataUpdate, dataIndices); + } +}; From 089fa73a067c417ac1b8e77fae8f7327c2b9d3a7 Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Wed, 28 Jan 2026 15:10:01 -0500 Subject: [PATCH 04/10] Add legend title click toggle setup and event handling --- src/components/legend/draw.js | 133 +++++++++++++++++++++++++++++++++- 1 file changed, 130 insertions(+), 3 deletions(-) diff --git a/src/components/legend/draw.js b/src/components/legend/draw.js index 49c793d3f12..2934c214e03 100644 --- a/src/components/legend/draw.js +++ b/src/components/legend/draw.js @@ -10,7 +10,8 @@ var dragElement = require('../dragelement'); var Drawing = require('../drawing'); var Color = require('../color'); var svgTextUtils = require('../../lib/svg_text_utils'); -var handleClick = require('./handle_click'); +var handleClick = require('./handle_click').handleClick; +var handleTitleClick = require('./handle_click').handleTitleClick; var constants = require('./constants'); var alignmentConstants = require('../../constants/alignment'); @@ -180,8 +181,14 @@ function drawOne(gd, opts) { .text(title.text); textLayout(titleEl, scrollBox, gd, legendObj, MAIN_TITLE); // handle mathjax or multi-line text and compute title height + + // Set up title click if enabled and not in hover mode + if(!inHover && (legendObj.titleclick || legendObj.titledoubleclick)) { + setupTitleToggle(scrollBox, gd, legendObj, legendId); + } } else { scrollBox.selectAll('.' + legendId + 'titletext').remove(); + scrollBox.selectAll('.' + legendId + 'titletoggle').remove(); } var scrollBar = Lib.ensureSingle(legend, 'rect', 'scrollbar', function(s) { @@ -198,7 +205,22 @@ function drawOne(gd, opts) { traces.exit().remove(); traces.style('opacity', function(d) { - var trace = d[0].trace; + var legendItem = d[0]; + var trace = legendItem.trace; + + // Toggle opacity of legend group titles if all items in the group are hidden + if(legendItem.groupTitle) { + var groupName = trace.legendgroup; + var shapes = (fullLayout.shapes || []).filter(function(s) { return s.showlegend; }); + var anyVisible = gd._fullData.concat(shapes).some(function(item) { + return item.legendgroup === groupName && + (item.legend || 'legend') === legendId && + item.visible === true; + }); + + return anyVisible ? 1 : 0.5; + } + if(Registry.traceIs(trace, 'pie-like')) { return hiddenSlices.indexOf(d[0].label) !== -1 ? 0.5 : 1; } else { @@ -207,7 +229,12 @@ function drawOne(gd, opts) { }) .each(function() { d3.select(this).call(drawTexts, gd, legendObj); }) .call(style, gd, legendObj) - .each(function() { if(!inHover) d3.select(this).call(setupTraceToggle, gd, legendId); }); + .each(function(d) { + if(inHover) return; + // Don't create a click targets for group titles when groupclick is 'toggleitem' + if(d[0].groupTitle && legendObj.groupclick === 'toggleitem') return; + d3.select(this).call(setupTraceToggle, gd, legendId); + }); Lib.syncOrAsync([ Plots.previousPromises, @@ -221,6 +248,20 @@ function drawOne(gd, opts) { // re-calculate title position after legend width is derived. To allow for horizontal alignment if(title.text) { horizontalAlignTitle(titleEl, legendObj, bw); + + // Position click target for the title after dimensions are computed + if(!inHover && (legendObj.titleclick || legendObj.titledoubleclick)) { + positionTitleToggle(scrollBox, legendObj, legendId); + } + + // Toggle opacity of legend titles if all items in the legend are hidden + var shapes = (fullLayout.shapes || []).filter(function(s) { return s.showlegend; }); + var anyVisible = gd._fullData.concat(shapes).some(function(item) { + var inThisLegend = (item.legend || 'legend') === legendId; + return inThisLegend && item.visible === true; + }); + + titleEl.style('opacity', anyVisible ? 1 : 0.5); } if(!inHover) { @@ -624,6 +665,92 @@ function setupTraceToggle(g, gd, legendId) { }); } +function setupTitleToggle(scrollBox, gd, legendObj, legendId) { + // For now, skip title click for legends containing pie-like traces + var hasPie = gd._fullData.some(function(trace) { + var legend = trace.legend || 'legend'; + var inThisLegend = Array.isArray(legend) ? legend.includes(legendId) : legend === legendId; + return inThisLegend && Registry.traceIs(trace, 'pie-like'); + }); + if(hasPie) return; + + var doubleClickDelay = gd._context.doubleClickDelay; + var newMouseDownTime; + var numClicks = 1; + + var titleToggle = Lib.ensureSingle(scrollBox, 'rect', legendId + 'titletoggle', function(s) { + if(!gd._context.staticPlot) { + s.style('cursor', 'pointer').attr('pointer-events', 'all'); + } + s.call(Color.fill, 'rgba(0,0,0,0)'); + }); + + if(gd._context.staticPlot) return; + + titleToggle.on('mousedown', function() { + newMouseDownTime = (new Date()).getTime(); + if(newMouseDownTime - gd._legendMouseDownTime < doubleClickDelay) { + // in a click train + numClicks += 1; + } else { + // new click train + numClicks = 1; + gd._legendMouseDownTime = newMouseDownTime; + } + }); + titleToggle.on('mouseup', function() { + if(gd._dragged || gd._editing) return; + + if((new Date()).getTime() - gd._legendMouseDownTime > doubleClickDelay) { + numClicks = Math.max(numClicks - 1, 1); + } + + var evtData = { + event: d3.event, + legendId: legendId, + data: gd.data, + layout: gd.layout, + fullData: gd._fullData, + fullLayout: gd._fullLayout + }; + + if(numClicks === 1 && legendObj.titleclick) { + var clickVal = Events.triggerHandler(gd, 'plotly_legendtitleclick', evtData); + if(clickVal === false) return; + + legendObj._titleClickTimeout = setTimeout(function() { + if(gd._fullLayout) handleTitleClick(gd, legendObj, legendObj.titleclick); + }, doubleClickDelay); + } else if(numClicks === 2) { + if(legendObj._titleClickTimeout) clearTimeout(legendObj._titleClickTimeout); + gd._legendMouseDownTime = 0; + + var dblClickVal = Events.triggerHandler(gd, 'plotly_legendtitledoubleclick', evtData); + if(dblClickVal !== false && legendObj.titledoubleclick) handleTitleClick(gd, legendObj, legendObj.titledoubleclick); + } + }); +} + +function positionTitleToggle(scrollBox, legendObj, legendId) { + var titleToggle = scrollBox.select('.' + legendId + 'titletoggle'); + if(!titleToggle.size()) return; + + var side = legendObj.title.side || 'top'; + var bw = legendObj.borderwidth; + var x = bw; + var width = legendObj._titleWidth + 2 * constants.titlePad; + var height = legendObj._titleHeight + 2 * constants.titlePad; + + + if(side === 'top center') { + x = bw + 0.5 * (legendObj._width - 2 * bw - width); + } else if(side === 'top right') { + x = legendObj._width - bw - width; + } + + titleToggle.attr({ x: x, y: bw, width: width, height: height }); +} + function textLayout(s, g, gd, legendObj, aTitle) { if(legendObj._inHover) s.attr('data-notex', true); // do not process MathJax for unified hover svgTextUtils.convertToTspans(s, gd, function() { From 207910ec4db02862ba3d3a0bf076396e03a33b2e Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Wed, 28 Jan 2026 15:10:06 -0500 Subject: [PATCH 05/10] Add mock chart for legend title click feature --- test/image/mocks/legend_title_click.json | 210 +++++++++++++++++++++++ 1 file changed, 210 insertions(+) create mode 100644 test/image/mocks/legend_title_click.json diff --git a/test/image/mocks/legend_title_click.json b/test/image/mocks/legend_title_click.json new file mode 100644 index 00000000000..90f1d297bf7 --- /dev/null +++ b/test/image/mocks/legend_title_click.json @@ -0,0 +1,210 @@ +{ + "config": { + "editable": false + }, + "data": [ + { + "name": "Series A1", + "y": [1, 2, 3], + "xaxis": "x", + "yaxis": "y", + "legendgroup": "Group A", + "legendgrouptitle": { "text": "Group A" } + }, + { + "name": "Series A2", + "y": [2, 3, 4], + "xaxis": "x", + "yaxis": "y", + "legendgroup": "Group A" + }, + { + "name": "Series B1", + "y": [3, 4, 5], + "xaxis": "x", + "yaxis": "y", + "legendgroup": "Group B", + "legendgrouptitle": { "text": "Group B" } + }, + { + "name": "Series C1", + "y": [5, 6, 7], + "xaxis": "x2", + "yaxis": "y2", + "legend": "legend2", + "legendgroup": "Group C", + "legendgrouptitle": { "text": "Group C" } + }, + { + "name": "Series C2", + "y": [6, 7, 8], + "xaxis": "x2", + "yaxis": "y2", + "legend": "legend2", + "legendgroup": "Group C" + }, + { + "name": "Series D1", + "y": [7, 8, 9], + "xaxis": "x3", + "yaxis": "y3", + "legend": "legend3" + }, + { + "name": "Series D2", + "y": [8, 9, 10], + "xaxis": "x3", + "yaxis": "y3", + "legend": "legend3" + }, + { + "name": "Series E1", + "y": [9, 10, 11], + "xaxis": "x4", + "yaxis": "y4", + "legend": "legend4" + }, + { + "name": "Series E2", + "y": [10, 11, 12], + "xaxis": "x4", + "yaxis": "y4", + "legend": "legend4" + }, + { + "name": "Series F1", + "y": [2, 4, 3], + "xaxis": "x", + "yaxis": "y", + "legend": "legend5" + }, + { + "name": "Series F2", + "y": [3, 5, 4], + "xaxis": "x", + "yaxis": "y", + "legend": "legend5" + } + ], + "layout": { + "title": { "text": "Legend Title Click Behaviors" }, + "width": 900, + "height": 700, + "grid": { "rows": 2, "columns": 2, "pattern": "independent" }, + "xaxis": { "domain": [0, 0.35] }, + "yaxis": { "domain": [0.55, 1] }, + "xaxis2": { "domain": [0, 0.35] }, + "yaxis2": { "domain": [0, 0.45] }, + "xaxis3": { "domain": [0.45, 0.8] }, + "yaxis3": { "domain": [0.55, 1] }, + "xaxis4": { "domain": [0.45, 0.8] }, + "yaxis4": { "domain": [0, 0.45] }, + "legend": { + "bgcolor": "rgba(200, 230, 255, 0.8)", + "title": { "text": "Default" }, + "x": 1.02, + "y": 1, + "xanchor": "left", + "titleclick": "toggle", + "titledoubleclick": "toggleothers", + "groupclick": "toggleitem" + }, + "legend2": { + "bgcolor": "rgba(255, 230, 200, 0.8)", + "title": { "text": "Swapped" }, + "x": 1.02, + "y": 0.7, + "xanchor": "left", + "titleclick": "toggleothers", + "titledoubleclick": "toggle" + }, + "legend3": { + "bgcolor": "rgba(230, 255, 200, 0.8)", + "title": { "text": "Single click disabled" }, + "x": 1.02, + "y": 0.4, + "xanchor": "left", + "titleclick": false, + "titledoubleclick": "toggleothers" + }, + "legend4": { + "bgcolor": "rgba(255, 200, 230, 0.8)", + "title": { "text": "Double click disabled" }, + "x": 1.02, + "y": 0.15, + "xanchor": "left", + "titleclick": "toggle", + "titledoubleclick": false + }, + "legend5": { + "bgcolor": "rgba(200, 200, 200, 0.8)", + "title": { "text": "Both disabled" }, + "x": 1.02, + "y": 0, + "xanchor": "left", + "yanchor": "bottom", + "titleclick": false, + "titledoubleclick": false + }, + "shapes": [ + { + "type": "rect", + "xref": "x", + "yref": "y", + "x0": 0.5, + "y0": 1.5, + "x1": 1.5, + "y1": 2.5, + "fillcolor": "rgba(100, 150, 255, 0.4)", + "line": { "color": "blue" }, + "name": "Shape A", + "showlegend": true, + "legend": "legend", + "legendgroup": "Group A" + }, + { + "type": "rect", + "xref": "x2", + "yref": "y2", + "x0": 0.5, + "y0": 5.5, + "x1": 1.5, + "y1": 6.5, + "fillcolor": "rgba(255, 180, 100, 0.4)", + "line": { "color": "orange" }, + "name": "Shape C", + "showlegend": true, + "legend": "legend2", + "legendgroup": "Group C" + }, + { + "type": "rect", + "xref": "x3", + "yref": "y3", + "x0": 0.5, + "y0": 7.5, + "x1": 1.5, + "y1": 8.5, + "fillcolor": "rgba(150, 255, 100, 0.4)", + "line": { "color": "green" }, + "name": "Shape D", + "showlegend": true, + "legend": "legend3" + }, + { + "type": "rect", + "xref": "x4", + "yref": "y4", + "x0": 0.5, + "y0": 9.5, + "x1": 1.5, + "y1": 10.5, + "fillcolor": "rgba(255, 100, 180, 0.4)", + "line": { "color": "magenta" }, + "name": "Shape E", + "showlegend": true, + "legend": "legend4" + } + ] + } +} From 2f934ad7b49500e2420529ae768cbe47e9f6efcd Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Wed, 28 Jan 2026 15:29:56 -0500 Subject: [PATCH 06/10] Only enable legend title click by default when there are multiple legends --- src/components/legend/attributes.js | 8 ++++---- src/components/legend/defaults.js | 9 +++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/components/legend/attributes.js b/src/components/legend/attributes.js index b4a60a474f5..6a08a1bb31e 100644 --- a/src/components/legend/attributes.js +++ b/src/components/legend/attributes.js @@ -179,25 +179,25 @@ module.exports = { titleclick: { valType: 'enumerated', values: ['toggle', 'toggleothers', false], - dflt: 'toggle', editType: 'legend', description: [ 'Determines the behavior on legend title click.', '*toggle* toggles the visibility of all items in the legend.', '*toggleothers* toggles the visibility of all other legends.', - '*false* disables legend title click interactions.' + '*false* disables legend title click interactions.', + 'Defaults to *toggle* when there are multiple legends, *false* otherwise.' ].join(' ') }, titledoubleclick: { valType: 'enumerated', values: ['toggle', 'toggleothers', false], - dflt: 'toggleothers', editType: 'legend', description: [ 'Determines the behavior on legend title double-click.', '*toggle* toggles the visibility of all items in the legend.', '*toggleothers* toggles the visibility of all other legends.', - '*false* disables legend title double-click interactions.' + '*false* disables legend title double-click interactions.', + 'Defaults to *toggleothers* when there are multiple legends, *false* otherwise.' ].join(' ') }, x: { diff --git a/src/components/legend/defaults.js b/src/components/legend/defaults.js index 0f4191167b9..d6845c48bbc 100644 --- a/src/components/legend/defaults.js +++ b/src/components/legend/defaults.js @@ -9,7 +9,7 @@ var attributes = require('./attributes'); var basePlotLayoutAttributes = require('../../plots/layout_attributes'); var helpers = require('./helpers'); -function groupDefaults(legendId, layoutIn, layoutOut, fullData) { +function groupDefaults(legendId, layoutIn, layoutOut, fullData, legendCount) { var containerIn = layoutIn[legendId] || {}; var containerOut = Template.newContainer(layoutOut, legendId); @@ -239,8 +239,9 @@ function groupDefaults(legendId, layoutIn, layoutOut, fullData) { Lib.coerceFont(coerce, 'title.font', dfltTitleFont); - coerce('titleclick'); - coerce('titledoubleclick'); + var hasMultipleLegends = legendCount > 1; + coerce('titleclick', hasMultipleLegends ? 'toggle' : false); + coerce('titledoubleclick', hasMultipleLegends ? 'toggleothers' : false); } } @@ -280,7 +281,7 @@ module.exports = function legendDefaults(layoutIn, layoutOut, fullData) { for(i = 0; i < legends.length; i++) { var legendId = legends[i]; - groupDefaults(legendId, layoutIn, layoutOut, allLegendsData); + groupDefaults(legendId, layoutIn, layoutOut, allLegendsData, legends.length); if(layoutOut[legendId]) { layoutOut[legendId]._id = legendId; From cd92feae2288186a53292f00a0d52354c7dea301 Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Thu, 29 Jan 2026 12:12:45 -0500 Subject: [PATCH 07/10] Add jasmine tests for legend title click --- test/jasmine/tests/legend_test.js | 247 ++++++++++++++++++++++++++++++ 1 file changed, 247 insertions(+) diff --git a/test/jasmine/tests/legend_test.js b/test/jasmine/tests/legend_test.js index 9fc21aabb47..a6099aafd80 100644 --- a/test/jasmine/tests/legend_test.js +++ b/test/jasmine/tests/legend_test.js @@ -2794,3 +2794,250 @@ describe('legend with custom legendwidth', function() { }).then(done, done.fail); }); }); + +describe('legend title click', function() { + "use strict"; + + var gd; + + beforeEach(function() { + gd = createGraphDiv(); + }); + afterEach(destroyGraphDiv); + + function clickTitle(legendId, clicks) { + return function() { + return new Promise(function(resolve) { + var selector = '.' + (legendId || 'legend') + 'titletoggle'; + var item = d3Select(selector).node(); + if(!item) { + fail('Could not find title toggle element: ' + selector); + return resolve(); + } + for(var i = 0; i < (clicks || 1); i++) { + item.dispatchEvent(new MouseEvent('mousedown')); + item.dispatchEvent(new MouseEvent('mouseup')); + } + setTimeout(resolve, DBLCLICKDELAY + 100); + }); + }; + } + + function extractVisibilities(data) { + return data.map(function(trace) { return trace.visible; }); + } + + function assertVisible(expectation) { + return function() { + var actual = extractVisibilities(gd._fullData); + expect(actual).toEqual(expectation); + }; + } + + function assertVisibleShapes(expectation) { + return function() { + var actual = extractVisibilities(gd._fullLayout.shapes); + expect(actual).toEqual(expectation); + }; + } + + describe('defaults', function() { + it('should disable title clicking by default for a single legend', function(done) { + Plotly.newPlot(gd, [ + { x: [1, 2], y: [1, 2] }, + { x: [1, 2], y: [2, 3] } + ], { + legend: { title: { text: 'Legend' } } + }).then(function() { + expect(gd._fullLayout.legend.titleclick).toBe(false); + expect(gd._fullLayout.legend.titledoubleclick).toBe(false); + }).then(done, done.fail); + }); + + it('should enable title clicking by default for multiple legends', function(done) { + Plotly.newPlot(gd, [ + { x: [1, 2], y: [1, 2] }, + { x: [1, 2], y: [2, 3] }, + { x: [1, 2], y: [3, 4], legend: 'legend2' }, + { x: [1, 2], y: [4, 5], legend: 'legend2' } + ], { + showlegend: true, + legend: { title: { text: 'Legend 1' } }, + legend2: { title: { text: 'Legend 2' } } + }).then(function() { + expect(gd._fullLayout.legend.titleclick).toBe('toggle'); + expect(gd._fullLayout.legend.titledoubleclick).toBe('toggleothers'); + expect(gd._fullLayout.legend2.titleclick).toBe('toggle'); + expect(gd._fullLayout.legend2.titledoubleclick).toBe('toggleothers'); + }).then(done, done.fail); + }); + + it('should allow user to override titleclick and titledoubleclick', function(done) { + Plotly.newPlot(gd, [ + { x: [1, 2], y: [1, 2] }, + { x: [1, 2], y: [2, 3] } + ], { + legend: { + title: { text: 'Legend' }, + titleclick: 'toggle', + titledoubleclick: false + } + }).then(function() { + expect(gd._fullLayout.legend.titleclick).toBe('toggle'); + expect(gd._fullLayout.legend.titledoubleclick).toBe(false); + }).then(done, done.fail); + }); + }); + + describe('toggle interactions', function() { + beforeEach(function(done) { + Plotly.newPlot(gd, [ + { x: [1, 2], y: [1, 2] }, + { x: [1, 2], y: [2, 3] }, + { x: [1, 2], y: [3, 4], legend: 'legend2' }, + { x: [1, 2], y: [4, 5], legend: 'legend2' } + ], { + showlegend: true, + legend: { title: { text: 'Legend 1' } }, + legend2: { title: { text: 'Legend 2' }, y: 0.5 } + }).then(done); + }); + + it('should hide all traces in legend when clicking title (all visible)', function(done) { + Promise.resolve() + .then(assertVisible([true, true, true, true])) + .then(clickTitle('legend')) + .then(assertVisible(['legendonly', 'legendonly', true, true])) + .then(done, done.fail); + }); + + it('should show all traces in legend when clicking title (all hidden)', function(done) { + Plotly.restyle(gd, 'visible', 'legendonly', [0, 1]) + .then(assertVisible(['legendonly', 'legendonly', true, true])) + .then(clickTitle('legend')) + .then(assertVisible([true, true, true, true])) + .then(done, done.fail); + }); + + it('should not affect traces with visible: false', function(done) { + Plotly.restyle(gd, 'visible', false, [0]) + .then(assertVisible([false, true, true, true])) + .then(clickTitle('legend')) + .then(assertVisible([false, 'legendonly', true, true])) + .then(done, done.fail); + }); + }); + + describe('toggleothers interactions', function() { + beforeEach(function(done) { + Plotly.newPlot(gd, [ + { x: [1, 2], y: [1, 2] }, + { x: [1, 2], y: [2, 3] }, + { x: [1, 2], y: [3, 4], legend: 'legend2' }, + { x: [1, 2], y: [4, 5], legend: 'legend2' } + ], { + showlegend: true, + legend: { title: { text: 'Legend 1' } }, + legend2: { title: { text: 'Legend 2' }, y: 0.5 } + }).then(done); + }); + + it('should isolate this legend (hide others)', function(done) { + Promise.resolve() + .then(assertVisible([true, true, true, true])) + .then(clickTitle('legend', 2)) + .then(assertVisible([true, true, 'legendonly', 'legendonly'])) + .then(done, done.fail); + }); + + it('should restore all when already isolated', function(done) { + Plotly.restyle(gd, 'visible', 'legendonly', [2, 3]) + .then(assertVisible([true, true, 'legendonly', 'legendonly'])) + .then(clickTitle('legend', 2)) + .then(assertVisible([true, true, true, true])) + .then(done, done.fail); + }); + }); + + describe('interactions with shapes', function() { + beforeEach(function(done) { + Plotly.newPlot(gd, [ + { x: [1, 2], y: [1, 2] }, + { x: [1, 2], y: [2, 3] }, + { x: [1, 2], y: [3, 4], legend: 'legend2' }, + { x: [1, 2], y: [4, 5], legend: 'legend2' } + ], { + showlegend: true, + legend: { title: { text: 'Legend 1' } }, + legend2: { title: { text: 'Legend 2' }, y: 0.5 }, + shapes: [ + { showlegend: true, type: 'line', x0: 0, y0: 0, x1: 1, y1: 1 }, + { showlegend: true, type: 'rect', x0: 0, y0: 0, x1: 1, y1: 1, legend: 'legend2' } + ] + }).then(done); + }); + + it('should toggle shapes with traces', function(done) { + Promise.resolve() + .then(assertVisible([true, true, true, true])) + .then(assertVisibleShapes([true, true])) + .then(clickTitle('legend')) + .then(assertVisible(['legendonly', 'legendonly', true, true])) + .then(assertVisibleShapes(['legendonly', true])) + .then(done, done.fail); + }); + }); + + it('should not create click target when no title text', function(done) { + Plotly.newPlot(gd, [ + { x: [1, 2], y: [1, 2] }, + { x: [1, 2], y: [2, 3] }, + { x: [1, 2], y: [3, 4], legend: 'legend2' }, + { x: [1, 2], y: [4, 5], legend: 'legend2' } + ], { + showlegend: true, + legend: {}, + legend2: { y: 0.5 } + }).then(function() { + var titleToggle = d3Select('.legendtitletoggle'); + expect(titleToggle.size()).toBe(0); + }).then(done, done.fail); + }); + + it('should have a pointer cursor on hover for clickable titles', function(done) { + Plotly.newPlot(gd, [ + { x: [1, 2], y: [1, 2] }, + { x: [1, 2], y: [2, 3] }, + { x: [1, 2], y: [3, 4], legend: 'legend2' }, + { x: [1, 2], y: [4, 5], legend: 'legend2' } + ], { + showlegend: true, + legend: { title: { text: 'Legend 1' } }, + legend2: { title: { text: 'Legend 2' }, y: 0.5 } + }).then(function() { + var titleToggle = d3Select('.legendtitletoggle').node(); + expect(titleToggle.style.cursor).toBe('pointer'); + }).then(done, done.fail); + }); + + it('should not have pointer cursor on static plots', function(done) { + Plotly.newPlot(gd, [ + { x: [1, 2], y: [1, 2] }, + { x: [1, 2], y: [2, 3] }, + { x: [1, 2], y: [3, 4], legend: 'legend2' }, + { x: [1, 2], y: [4, 5], legend: 'legend2' } + ], { + showlegend: true, + legend: { title: { text: 'Legend 1' } }, + legend2: { title: { text: 'Legend 2' }, y: 0.5 } + }, { + staticPlot: true + }).then(function() { + var titleToggle = d3Select('.legendtitletoggle').node(); + // On static plots, the title toggle rect is created but without pointer cursor + if(titleToggle) { + expect(titleToggle.style.cursor).not.toBe('pointer'); + } + }).then(done, done.fail); + }); +}); \ No newline at end of file From 53073d7a336de99e28a0bdabd55d98d2a2da7f04 Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Thu, 29 Jan 2026 12:37:13 -0500 Subject: [PATCH 08/10] Update schema --- test/plot-schema.json | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/test/plot-schema.json b/test/plot-schema.json index 211da680a56..e753455cb7f 100644 --- a/test/plot-schema.json +++ b/test/plot-schema.json @@ -3581,6 +3581,26 @@ "valType": "string" } }, + "titleclick": { + "description": "Determines the behavior on legend title click. *toggle* toggles the visibility of all items in the legend. *toggleothers* toggles the visibility of all other legends. *false* disables legend title click interactions. Defaults to *toggle* when there are multiple legends, *false* otherwise.", + "editType": "legend", + "valType": "enumerated", + "values": [ + "toggle", + "toggleothers", + false + ] + }, + "titledoubleclick": { + "description": "Determines the behavior on legend title double-click. *toggle* toggles the visibility of all items in the legend. *toggleothers* toggles the visibility of all other legends. *false* disables legend title double-click interactions. Defaults to *toggleothers* when there are multiple legends, *false* otherwise.", + "editType": "legend", + "valType": "enumerated", + "values": [ + "toggle", + "toggleothers", + false + ] + }, "tracegroupgap": { "description": "Sets the amount of vertical space (in px) between legend groups.", "dflt": 10, From 459e229b15a54210291d33959d1eb22ef41b7a8e Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Thu, 29 Jan 2026 16:26:22 -0500 Subject: [PATCH 09/10] Add baseline image --- test/image/baselines/legend_title_click.png | Bin 0 -> 103239 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 test/image/baselines/legend_title_click.png diff --git a/test/image/baselines/legend_title_click.png b/test/image/baselines/legend_title_click.png new file mode 100644 index 0000000000000000000000000000000000000000..cb4d4e111994461ecfb3801ac3e1c07aa14ce8e5 GIT binary patch literal 103239 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

YvriE`{}~lPkfA+)rZ z>-4H!OHP7ARr^CFc-hc6LY}i;u1_!7@bU((HxsP^Iy72(USoEoQ9`s>04C(;(_qqr ze`@KkU{pDo?R&K;NAaka7br3=AMV1<3&6Cn|EgdeNB)GSOcDho34gdW4|?vYS_2Q9 z!1f#)(jWY4ivbCeES8ZFB9ST8!kY-u*c?!4MW7Wy8hX@TiyYe1E4%|!J_wYLa>ydm zHw>QzHV2GG2Brux`;GpV2`d{T`X8a+-CI3F{vruplq}-NL_fq6(#RO_P5J{I`pKf2 zfO21q{Su)krSgG_DaM?ofa(b0k7@yDBmMf{l0iX&*jx?dy4`+3acvW{)K5a zz3GNccXw})lJ1sH=|*w`8<6f60cns%B&179S_J7(KvIy7Z~4}F&-wo6;#_gD*w3@( znsbgh#xKUC6LiesZKgxPOal)yGM3!+Bk%LKS=nOgai3i? zHtcJz%np3|e}g!hs6Vkh!~*D=A=;<6&M%1MoD+E^Tq=q{RxZ~3KzRm-!@_KLj>T2ahw~eZVz+={ z#tO^6$vY#m0NR;Rwu9YcySVKFb~~+^Rj(NSy}Pq%Kr&K};2@0D*@Hq;iXl2CjPmvs zZRJhy+vI0-^CHVxqe^rw*oHPQg$zJ;PJ5Awq^Sg%2>+%kcJV~T$mVd;#{tci;%Cgm zHvn{G^rJr3LoIG0KjG@bkw@tDi9sTEnOEM~c+G6lSKZXDH+Oidjd(TwzZ=Wb7gzL5Mp2V+cqL*>Aj z_G}w6H3H5C?QtV-fb8jtp%9=@DT08kf^{%&ImJr3ae01hMyS_+g!=Zp%cWWPDwmUy z2L}u}mYY>kpg0T_Z@j4{vKbE)al;dA2XqIjq}Q@nu<_TL&-GQMv**V@IT=~d%}WKy z>+t_TT^mWu?|XTvrBmp|bgHq-&-%-LP2v+axuGy=|GeJD3QupL1w!A?xsGE)%77nI zMH&tp>oQ}nqzI$_w}1h(Lm05`4{J}zv2n7veFN|g@`d6lOR}awYQ(kQeAEy9i>|1? z$xChudk`UHF*_E?e|?wi5IRZq32-oMm!z)px$X)duC-!lZ{kf?T}`{_#{*st=Aw|r z$Ndwa8Nj{cT8EmdRPPFS1!kF)agZP2uQRA{b8hZ z^(n;X1oy*7EykHihLZ(CB028_?7wP2pkV#H0od6+HdI(YtrRp`$z#oPpRdQLUupe= zBRE=YwUO;bT1im(o^3E&!Wb<~7Uw3^**Cjz zs;XNU?(lq{Uy6r{cO;t#2X0?429cYrU=gIQmoE#ihC z{TXwx5a9j>vdcIP;d$P-aT__)?5Ei#@$fPCMt=bzJVr0XX-?EOrh!VQ5r%TOIW?@nGcbisg^^2R4l9=&_t^Jbu9vi zHa$P59#`jky{;sa7U_@k{EPHz*Dcq>>NThJx;MbaUJ4`Jz-^N@}0|{tPWg&1qK!y56@s zWfG{adg-v4)yV38m=LM}O7;0YtFGxLFs_jwN)R_%$?F=zuXyfnYp?+rV;48KK*Z15 zyjRlf=BkwQf5UHbPu`1B6US$3n)eUv5cy_rEJwGm$JhY61_2s>9su={}(SOi{FWV|4E-f%1kR;ccEBty9?Y?D zM=~Mqr(35T_~L!FalG~V!$4k1V~^(BDceNy|HkI3dHxSyz^y+wGj2h$g}j~@rpXP- z(6Hjdc`%wcMsZ!LbK}|dtqC}^JKOIhyCR(-`sU6G9>zx0TtsG~0CJ~R&&Qu&k4U^j z<}NR^RHmE1(|oPKuLI(WSg2I-e!-vjChoJ8$if6fM`v?yH*V{Nb3Y)Y&^`hzYf;m) zaN{s5pleJ^2>f5Hc{oXw7E9#+QX@%PJZ2H~m&hvd{Tk$agDYL|9K}v?dXeiVj|_ce z{hPMZx)?CI*=iBR3iY}4i>Vc$^!2;3lI;Ezh;AA=#~ty<ઌWC#&Q^q*6GWrex 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

>oO$ns)wOA5b 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 literal 0 HcmV?d00001 From 6bec6d1f28b17358fed11c2eeea195b08bdde12f Mon Sep 17 00:00:00 2001 From: Alex Hsu Date: Fri, 30 Jan 2026 15:03:02 -0500 Subject: [PATCH 10/10] Convert var to const where applicable --- src/components/legend/defaults.js | 2 +- src/components/legend/draw.js | 42 ++-- src/components/legend/handle_click.js | 38 ++-- test/image/baselines/legend_title_click.png | Bin 103239 -> 0 bytes test/image/mocks/legend_title_click.json | 210 -------------------- 5 files changed, 41 insertions(+), 251 deletions(-) delete mode 100644 test/image/baselines/legend_title_click.png delete mode 100644 test/image/mocks/legend_title_click.json diff --git a/src/components/legend/defaults.js b/src/components/legend/defaults.js index d6845c48bbc..eb8a6212a0f 100644 --- a/src/components/legend/defaults.js +++ b/src/components/legend/defaults.js @@ -239,7 +239,7 @@ function groupDefaults(legendId, layoutIn, layoutOut, fullData, legendCount) { Lib.coerceFont(coerce, 'title.font', dfltTitleFont); - var hasMultipleLegends = legendCount > 1; + const hasMultipleLegends = legendCount > 1; coerce('titleclick', hasMultipleLegends ? 'toggle' : false); coerce('titledoubleclick', hasMultipleLegends ? 'toggleothers' : false); } diff --git a/src/components/legend/draw.js b/src/components/legend/draw.js index 2934c214e03..5ac11454c57 100644 --- a/src/components/legend/draw.js +++ b/src/components/legend/draw.js @@ -205,14 +205,14 @@ function drawOne(gd, opts) { traces.exit().remove(); traces.style('opacity', function(d) { - var legendItem = d[0]; - var trace = legendItem.trace; + const legendItem = d[0]; + const trace = legendItem.trace; // Toggle opacity of legend group titles if all items in the group are hidden if(legendItem.groupTitle) { - var groupName = trace.legendgroup; - var shapes = (fullLayout.shapes || []).filter(function(s) { return s.showlegend; }); - var anyVisible = gd._fullData.concat(shapes).some(function(item) { + const groupName = trace.legendgroup; + const shapes = (fullLayout.shapes || []).filter(function(s) { return s.showlegend; }); + const anyVisible = gd._fullData.concat(shapes).some(function(item) { return item.legendgroup === groupName && (item.legend || 'legend') === legendId && item.visible === true; @@ -255,9 +255,9 @@ function drawOne(gd, opts) { } // Toggle opacity of legend titles if all items in the legend are hidden - var shapes = (fullLayout.shapes || []).filter(function(s) { return s.showlegend; }); - var anyVisible = gd._fullData.concat(shapes).some(function(item) { - var inThisLegend = (item.legend || 'legend') === legendId; + const shapes = (fullLayout.shapes || []).filter(function(s) { return s.showlegend; }); + const anyVisible = gd._fullData.concat(shapes).some(function(item) { + const inThisLegend = (item.legend || 'legend') === legendId; return inThisLegend && item.visible === true; }); @@ -667,18 +667,18 @@ function setupTraceToggle(g, gd, legendId) { function setupTitleToggle(scrollBox, gd, legendObj, legendId) { // For now, skip title click for legends containing pie-like traces - var hasPie = gd._fullData.some(function(trace) { - var legend = trace.legend || 'legend'; - var inThisLegend = Array.isArray(legend) ? legend.includes(legendId) : legend === legendId; + const hasPie = gd._fullData.some(function(trace) { + const legend = trace.legend || 'legend'; + const inThisLegend = Array.isArray(legend) ? legend.includes(legendId) : legend === legendId; return inThisLegend && Registry.traceIs(trace, 'pie-like'); }); if(hasPie) return; - var doubleClickDelay = gd._context.doubleClickDelay; + const doubleClickDelay = gd._context.doubleClickDelay; var newMouseDownTime; var numClicks = 1; - var titleToggle = Lib.ensureSingle(scrollBox, 'rect', legendId + 'titletoggle', function(s) { + const titleToggle = Lib.ensureSingle(scrollBox, 'rect', legendId + 'titletoggle', function(s) { if(!gd._context.staticPlot) { s.style('cursor', 'pointer').attr('pointer-events', 'all'); } @@ -705,7 +705,7 @@ function setupTitleToggle(scrollBox, gd, legendObj, legendId) { numClicks = Math.max(numClicks - 1, 1); } - var evtData = { + const evtData = { event: d3.event, legendId: legendId, data: gd.data, @@ -715,7 +715,7 @@ function setupTitleToggle(scrollBox, gd, legendObj, legendId) { }; if(numClicks === 1 && legendObj.titleclick) { - var clickVal = Events.triggerHandler(gd, 'plotly_legendtitleclick', evtData); + const clickVal = Events.triggerHandler(gd, 'plotly_legendtitleclick', evtData); if(clickVal === false) return; legendObj._titleClickTimeout = setTimeout(function() { @@ -725,21 +725,21 @@ function setupTitleToggle(scrollBox, gd, legendObj, legendId) { if(legendObj._titleClickTimeout) clearTimeout(legendObj._titleClickTimeout); gd._legendMouseDownTime = 0; - var dblClickVal = Events.triggerHandler(gd, 'plotly_legendtitledoubleclick', evtData); + const dblClickVal = Events.triggerHandler(gd, 'plotly_legendtitledoubleclick', evtData); if(dblClickVal !== false && legendObj.titledoubleclick) handleTitleClick(gd, legendObj, legendObj.titledoubleclick); } }); } function positionTitleToggle(scrollBox, legendObj, legendId) { - var titleToggle = scrollBox.select('.' + legendId + 'titletoggle'); + const titleToggle = scrollBox.select('.' + legendId + 'titletoggle'); if(!titleToggle.size()) return; - var side = legendObj.title.side || 'top'; - var bw = legendObj.borderwidth; + const side = legendObj.title.side || 'top'; + const bw = legendObj.borderwidth; var x = bw; - var width = legendObj._titleWidth + 2 * constants.titlePad; - var height = legendObj._titleHeight + 2 * constants.titlePad; + const width = legendObj._titleWidth + 2 * constants.titlePad; + const height = legendObj._titleHeight + 2 * constants.titlePad; if(side === 'top center') { diff --git a/src/components/legend/handle_click.js b/src/components/legend/handle_click.js index 9a40b08980f..3f4302d972b 100644 --- a/src/components/legend/handle_click.js +++ b/src/components/legend/handle_click.js @@ -12,15 +12,15 @@ exports.handleClick = function handleClick(g, gd, numClicks) { if(gd._dragged || gd._editing) return; - var legendItem = g.data()[0][0]; + const legendItem = g.data()[0][0]; if(legendItem.groupTitle && legendItem.noClick) return; - var legendId = legendItem.trace.legend || 'legend'; - var legendObj = fullLayout[legendId]; + const legendId = legendItem.trace.legend || 'legend'; + const legendObj = fullLayout[legendId]; - var itemClick = legendObj.itemclick; - var itemDoubleClick = legendObj.itemdoubleclick; - var groupClick = legendObj.groupclick; + const itemClick = legendObj.itemclick; + const itemDoubleClick = legendObj.itemdoubleclick; + const groupClick = legendObj.groupclick; if(numClicks === 1 && itemClick === 'toggle' && itemDoubleClick === 'toggleothers' && SHOWISOLATETIP && gd.data && gd._context.showTips @@ -275,11 +275,11 @@ exports.handleClick = function handleClick(g, gd, numClicks) { }; exports.handleTitleClick = function handleTitleClick(gd, legendObj, mode) { - var fullLayout = gd._fullLayout; - var fullData = gd._fullData; - var legendId = legendObj._id || 'legend'; - var shapesWithLegend = (fullLayout.shapes || []).filter(function(d) { return d.showlegend; }); - var allLegendItems = fullData.concat(shapesWithLegend); + const fullLayout = gd._fullLayout; + const fullData = gd._fullData; + const legendId = legendObj._id || 'legend'; + const shapesWithLegend = (fullLayout.shapes || []).filter(function(d) { return d.showlegend; }); + const allLegendItems = fullData.concat(shapesWithLegend); function isInLegend(item) { return (item.legend || 'legend') === legendId; @@ -290,7 +290,7 @@ exports.handleTitleClick = function handleTitleClick(gd, legendObj, mode) { if(mode === 'toggle') { // If any item is visible in this legend, hide all. If all are hidden, show all - var anyVisibleHere = allLegendItems.some(function(item) { + const anyVisibleHere = allLegendItems.some(function(item) { return isInLegend(item) && item.visible === true; }); @@ -298,7 +298,7 @@ exports.handleTitleClick = function handleTitleClick(gd, legendObj, mode) { toggleOtherLegends = null; } else { // isolate this legend or set all legends to visible - var anyVisibleElsewhere = allLegendItems.some(function(item) { + const anyVisibleElsewhere = allLegendItems.some(function(item) { return !isInLegend(item) && item.visible === true && item.showlegend !== false; }); @@ -306,15 +306,15 @@ exports.handleTitleClick = function handleTitleClick(gd, legendObj, mode) { toggleOtherLegends = !anyVisibleElsewhere; } - var dataUpdate = { visible: [] }; - var dataIndices = []; - var updatedShapes = (fullLayout.shapes || []).map(function(d) { return d._input; }); + const dataUpdate = { visible: [] }; + const dataIndices = []; + const updatedShapes = (fullLayout.shapes || []).map(function(d) { return d._input; }); var shapesUpdated = false; for(var i = 0; i < allLegendItems.length; i++) { - var item = allLegendItems[i]; - var shouldShow = isInLegend(item) ? toggleThisLegend : toggleOtherLegends; - var newVis = shouldShow ? true : 'legendonly'; + const item = allLegendItems[i]; + const shouldShow = isInLegend(item) ? toggleThisLegend : toggleOtherLegends; + const newVis = shouldShow ? true : 'legendonly'; // Only update if the item is visible and the visibility is different from the new visibility if ((item.visible !== false) && (shouldShow !== null) && (item.visible !== newVis)) { diff --git a/test/image/baselines/legend_title_click.png b/test/image/baselines/legend_title_click.png deleted file mode 100644 index cb4d4e111994461ecfb3801ac3e1c07aa14ce8e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 103239 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

YvriE`{}~lPkfA+)rZ z>-4H!OHP7ARr^CFc-hc6LY}i;u1_!7@bU((HxsP^Iy72(USoEoQ9`s>04C(;(_qqr ze`@KkU{pDo?R&K;NAaka7br3=AMV1<3&6Cn|EgdeNB)GSOcDho34gdW4|?vYS_2Q9 z!1f#)(jWY4ivbCeES8ZFB9ST8!kY-u*c?!4MW7Wy8hX@TiyYe1E4%|!J_wYLa>ydm zHw>QzHV2GG2Brux`;GpV2`d{T`X8a+-CI3F{vruplq}-NL_fq6(#RO_P5J{I`pKf2 zfO21q{Su)krSgG_DaM?ofa(b0k7@yDBmMf{l0iX&*jx?dy4`+3acvW{)K5a zz3GNccXw})lJ1sH=|*w`8<6f60cns%B&179S_J7(KvIy7Z~4}F&-wo6;#_gD*w3@( znsbgh#xKUC6LiesZKgxPOal)yGM3!+Bk%LKS=nOgai3i? zHtcJz%np3|e}g!hs6Vkh!~*D=A=;<6&M%1MoD+E^Tq=q{RxZ~3KzRm-!@_KLj>T2ahw~eZVz+={ z#tO^6$vY#m0NR;Rwu9YcySVKFb~~+^Rj(NSy}Pq%Kr&K};2@0D*@Hq;iXl2CjPmvs zZRJhy+vI0-^CHVxqe^rw*oHPQg$zJ;PJ5Awq^Sg%2>+%kcJV~T$mVd;#{tci;%Cgm zHvn{G^rJr3LoIG0KjG@bkw@tDi9sTEnOEM~c+G6lSKZXDH+Oidjd(TwzZ=Wb7gzL5Mp2V+cqL*>Aj z_G}w6H3H5C?QtV-fb8jtp%9=@DT08kf^{%&ImJr3ae01hMyS_+g!=Zp%cWWPDwmUy z2L}u}mYY>kpg0T_Z@j4{vKbE)al;dA2XqIjq}Q@nu<_TL&-GQMv**V@IT=~d%}WKy z>+t_TT^mWu?|XTvrBmp|bgHq-&-%-LP2v+axuGy=|GeJD3QupL1w!A?xsGE)%77nI zMH&tp>oQ}nqzI$_w}1h(Lm05`4{J}zv2n7veFN|g@`d6lOR}awYQ(kQeAEy9i>|1? z$xChudk`UHF*_E?e|?wi5IRZq32-oMm!z)px$X)duC-!lZ{kf?T}`{_#{*st=Aw|r z$Ndwa8Nj{cT8EmdRPPFS1!kF)agZP2uQRA{b8hZ z^(n;X1oy*7EykHihLZ(CB028_?7wP2pkV#H0od6+HdI(YtrRp`$z#oPpRdQLUupe= zBRE=YwUO;bT1im(o^3E&!Wb<~7Uw3^**Cjz zs;XNU?(lq{Uy6r{cO;t#2X0?429cYrU=gIQmoE#ihC z{TXwx5a9j>vdcIP;d$P-aT__)?5Ei#@$fPCMt=bzJVr0XX-?EOrh!VQ5r%TOIW?@nGcbisg^^2R4l9=&_t^Jbu9vi zHa$P59#`jky{;sa7U_@k{EPHz*Dcq>>NThJx;MbaUJ4`Jz-^N@}0|{tPWg&1qK!y56@s zWfG{adg-v4)yV38m=LM}O7;0YtFGxLFs_jwN)R_%$?F=zuXyfnYp?+rV;48KK*Z15 zyjRlf=BkwQf5UHbPu`1B6US$3n)eUv5cy_rEJwGm$JhY61_2s>9su={}(SOi{FWV|4E-f%1kR;ccEBty9?Y?D zM=~Mqr(35T_~L!FalG~V!$4k1V~^(BDceNy|HkI3dHxSyz^y+wGj2h$g}j~@rpXP- z(6Hjdc`%wcMsZ!LbK}|dtqC}^JKOIhyCR(-`sU6G9>zx0TtsG~0CJ~R&&Qu&k4U^j z<}NR^RHmE1(|oPKuLI(WSg2I-e!-vjChoJ8$if6fM`v?yH*V{Nb3Y)Y&^`hzYf;m) zaN{s5pleJ^2>f5Hc{oXw7E9#+QX@%PJZ2H~m&hvd{Tk$agDYL|9K}v?dXeiVj|_ce z{hPMZx)?CI*=iBR3iY}4i>Vc$^!2;3lI;Ezh;AA=#~ty<ઌWC#&Q^q*6GWrex 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

>oO$ns)wOA5b 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 diff --git a/test/image/mocks/legend_title_click.json b/test/image/mocks/legend_title_click.json deleted file mode 100644 index 90f1d297bf7..00000000000 --- a/test/image/mocks/legend_title_click.json +++ /dev/null @@ -1,210 +0,0 @@ -{ - "config": { - "editable": false - }, - "data": [ - { - "name": "Series A1", - "y": [1, 2, 3], - "xaxis": "x", - "yaxis": "y", - "legendgroup": "Group A", - "legendgrouptitle": { "text": "Group A" } - }, - { - "name": "Series A2", - "y": [2, 3, 4], - "xaxis": "x", - "yaxis": "y", - "legendgroup": "Group A" - }, - { - "name": "Series B1", - "y": [3, 4, 5], - "xaxis": "x", - "yaxis": "y", - "legendgroup": "Group B", - "legendgrouptitle": { "text": "Group B" } - }, - { - "name": "Series C1", - "y": [5, 6, 7], - "xaxis": "x2", - "yaxis": "y2", - "legend": "legend2", - "legendgroup": "Group C", - "legendgrouptitle": { "text": "Group C" } - }, - { - "name": "Series C2", - "y": [6, 7, 8], - "xaxis": "x2", - "yaxis": "y2", - "legend": "legend2", - "legendgroup": "Group C" - }, - { - "name": "Series D1", - "y": [7, 8, 9], - "xaxis": "x3", - "yaxis": "y3", - "legend": "legend3" - }, - { - "name": "Series D2", - "y": [8, 9, 10], - "xaxis": "x3", - "yaxis": "y3", - "legend": "legend3" - }, - { - "name": "Series E1", - "y": [9, 10, 11], - "xaxis": "x4", - "yaxis": "y4", - "legend": "legend4" - }, - { - "name": "Series E2", - "y": [10, 11, 12], - "xaxis": "x4", - "yaxis": "y4", - "legend": "legend4" - }, - { - "name": "Series F1", - "y": [2, 4, 3], - "xaxis": "x", - "yaxis": "y", - "legend": "legend5" - }, - { - "name": "Series F2", - "y": [3, 5, 4], - "xaxis": "x", - "yaxis": "y", - "legend": "legend5" - } - ], - "layout": { - "title": { "text": "Legend Title Click Behaviors" }, - "width": 900, - "height": 700, - "grid": { "rows": 2, "columns": 2, "pattern": "independent" }, - "xaxis": { "domain": [0, 0.35] }, - "yaxis": { "domain": [0.55, 1] }, - "xaxis2": { "domain": [0, 0.35] }, - "yaxis2": { "domain": [0, 0.45] }, - "xaxis3": { "domain": [0.45, 0.8] }, - "yaxis3": { "domain": [0.55, 1] }, - "xaxis4": { "domain": [0.45, 0.8] }, - "yaxis4": { "domain": [0, 0.45] }, - "legend": { - "bgcolor": "rgba(200, 230, 255, 0.8)", - "title": { "text": "Default" }, - "x": 1.02, - "y": 1, - "xanchor": "left", - "titleclick": "toggle", - "titledoubleclick": "toggleothers", - "groupclick": "toggleitem" - }, - "legend2": { - "bgcolor": "rgba(255, 230, 200, 0.8)", - "title": { "text": "Swapped" }, - "x": 1.02, - "y": 0.7, - "xanchor": "left", - "titleclick": "toggleothers", - "titledoubleclick": "toggle" - }, - "legend3": { - "bgcolor": "rgba(230, 255, 200, 0.8)", - "title": { "text": "Single click disabled" }, - "x": 1.02, - "y": 0.4, - "xanchor": "left", - "titleclick": false, - "titledoubleclick": "toggleothers" - }, - "legend4": { - "bgcolor": "rgba(255, 200, 230, 0.8)", - "title": { "text": "Double click disabled" }, - "x": 1.02, - "y": 0.15, - "xanchor": "left", - "titleclick": "toggle", - "titledoubleclick": false - }, - "legend5": { - "bgcolor": "rgba(200, 200, 200, 0.8)", - "title": { "text": "Both disabled" }, - "x": 1.02, - "y": 0, - "xanchor": "left", - "yanchor": "bottom", - "titleclick": false, - "titledoubleclick": false - }, - "shapes": [ - { - "type": "rect", - "xref": "x", - "yref": "y", - "x0": 0.5, - "y0": 1.5, - "x1": 1.5, - "y1": 2.5, - "fillcolor": "rgba(100, 150, 255, 0.4)", - "line": { "color": "blue" }, - "name": "Shape A", - "showlegend": true, - "legend": "legend", - "legendgroup": "Group A" - }, - { - "type": "rect", - "xref": "x2", - "yref": "y2", - "x0": 0.5, - "y0": 5.5, - "x1": 1.5, - "y1": 6.5, - "fillcolor": "rgba(255, 180, 100, 0.4)", - "line": { "color": "orange" }, - "name": "Shape C", - "showlegend": true, - "legend": "legend2", - "legendgroup": "Group C" - }, - { - "type": "rect", - "xref": "x3", - "yref": "y3", - "x0": 0.5, - "y0": 7.5, - "x1": 1.5, - "y1": 8.5, - "fillcolor": "rgba(150, 255, 100, 0.4)", - "line": { "color": "green" }, - "name": "Shape D", - "showlegend": true, - "legend": "legend3" - }, - { - "type": "rect", - "xref": "x4", - "yref": "y4", - "x0": 0.5, - "y0": 9.5, - "x1": 1.5, - "y1": 10.5, - "fillcolor": "rgba(255, 100, 180, 0.4)", - "line": { "color": "magenta" }, - "name": "Shape E", - "showlegend": true, - "legend": "legend4" - } - ] - } -}