Skip to content

Commit 697ed3a

Browse files
committed
move range slider 'range' compute in update
- sometimes the rangeslider range is cleared when no enter selection present, e.g. on relayout(gd, xaxis.rangeslider: { thickness: 0.2 })
1 parent 8502206 commit 697ed3a

File tree

1 file changed

+6
-10
lines changed

1 file changed

+6
-10
lines changed

src/components/rangeslider/draw.js

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ module.exports = function(gd) {
5151
.selectAll('g.' + constants.containerClassName)
5252
.data(rangeSliderData, keyFunction);
5353

54-
var newRangeSliders = rangeSliders.enter().append('g')
54+
rangeSliders.enter().append('g')
5555
.classed(constants.containerClassName, true)
5656
.attr('pointer-events', 'all');
5757

@@ -63,21 +63,17 @@ module.exports = function(gd) {
6363
// return early if no range slider is visible
6464
if(rangeSliderData.length === 0) return;
6565

66-
// set new slider range using axis autorange if necessary
67-
newRangeSliders.each(function(axisOpts) {
68-
var opts = axisOpts[constants.name];
66+
// for all present range sliders
67+
rangeSliders.each(function(axisOpts) {
68+
var rangeSlider = d3.select(this),
69+
opts = axisOpts[constants.name];
6970

71+
// compute new slider range using axis autorange if necessary
7072
// copy back range to input range slider container to skip
7173
// this step in subsequent draw calls
7274
if(!opts.range) {
7375
opts._input.range = opts.range = Axes.getAutoRange(axisOpts);
7476
}
75-
});
76-
77-
// for all present range slides
78-
rangeSliders.each(function(axisOpts) {
79-
var rangeSlider = d3.select(this),
80-
opts = axisOpts[constants.name];
8177

8278
// update range slider dimensions
8379

0 commit comments

Comments
 (0)