calculate isZoomed state before mutating graph data, fixes #193
This commit is contained in:
parent
1b2a3de3f7
commit
b7492b3a3b
@ -28,6 +28,11 @@ export class GraphDisplayManager {
|
|||||||
// and the application has received updates prior to the initial state
|
// and the application has received updates prior to the initial state
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Calculate isZoomed before mutating graphData otherwise the indexed values
|
||||||
|
// are out of date and will always fail when compared to plotScaleX.min/max
|
||||||
|
const plotScaleX = this._plotInstance.scales.x
|
||||||
|
const isZoomed = plotScaleX.min > this._graphTimestamps[0] || plotScaleX.max < this._graphTimestamps[this._graphTimestamps.length - 1]
|
||||||
|
|
||||||
this._graphTimestamps.push(timestamp)
|
this._graphTimestamps.push(timestamp)
|
||||||
|
|
||||||
@ -49,12 +54,6 @@ export class GraphDisplayManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Dedrive plotTimestamps from the uPlot instance's data since this._graphTimestamps has been mutated
|
|
||||||
const plotTimestamps = this._plotInstance.data[0]
|
|
||||||
const plotScaleX = this._plotInstance.scales.x
|
|
||||||
|
|
||||||
const isZoomed = plotScaleX.min > plotTimestamps[0] || plotScaleX.max < plotTimestamps[plotTimestamps.length - 1]
|
|
||||||
|
|
||||||
// Avoid redrawing the plot when zoomed
|
// Avoid redrawing the plot when zoomed
|
||||||
this._plotInstance.setData(this.getGraphData(), !isZoomed)
|
this._plotInstance.setData(this.getGraphData(), !isZoomed)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user