diff --git a/public/app/plugins/panel/graph/Legend/Legend.tsx b/public/app/plugins/panel/graph/Legend/Legend.tsx index f6daf778848..ee9de5b685e 100644 --- a/public/app/plugins/panel/graph/Legend/Legend.tsx +++ b/public/app/plugins/panel/graph/Legend/Legend.tsx @@ -57,6 +57,21 @@ export class GraphLegend extends React.PureComponent { onColorChange: () => {}, }; + onToggleSeries = (series, event) => { + this.props.onToggleSeries(series, event); + this.forceUpdate(); + }; + + onToggleAxis = series => { + this.props.onToggleAxis(series); + this.forceUpdate(); + }; + + onColorChange = (series, color) => { + this.props.onColorChange(series, color); + this.forceUpdate(); + }; + sortLegend() { let seriesList = this.props.seriesList || []; if (this.props.sort) { @@ -74,12 +89,6 @@ export class GraphLegend extends React.PureComponent { return seriesList; } - onToggleSeries(series: TimeSeries, event: Event) { - // const scrollPosition = legendScrollbar.scroller.scrollTop; - this.props.onToggleSeries(series, event); - // legendScrollbar.scroller.scrollTop = scrollPosition; - } - render() { const { optionalClass, hiddenSeries, rightSide, sideWidth, sort, sortDesc, hideEmpty, hideZero } = this.props; const { values, min, max, avg, current, total } = this.props; @@ -101,10 +110,10 @@ export class GraphLegend extends React.PureComponent { const legendProps: GraphLegendProps = { seriesList: seriesList, hiddenSeries: hiddenSeries, - onToggleSeries: (s, e) => this.onToggleSeries(s, e), - onToggleSort: (sortBy, sortDesc) => this.props.onToggleSort(sortBy, sortDesc), - onColorChange: (series, color) => this.props.onColorChange(series, color), - onToggleAxis: series => this.props.onToggleAxis(series), + onToggleSeries: this.onToggleSeries, + onToggleAxis: this.onToggleAxis, + onToggleSort: this.props.onToggleSort, + onColorChange: this.onColorChange, ...seriesValuesProps, ...sortProps, }; @@ -121,23 +130,22 @@ class LegendSeriesList extends React.PureComponent { render() { const { seriesList, hiddenSeries, values, min, max, avg, current, total } = this.props; const seriesValuesProps = { values, min, max, avg, current, total }; - return seriesList.map((series, i) => ( + return seriesList.map(series => (