Index: sources/gui/qml/components/RangeSlider.qml =================================================================== diff -u -r874a982c1983fea20307a031e09f90a91ca34d75 -r278d2553ee91cff36b356bd2ff028ff4764ded60 --- sources/gui/qml/components/RangeSlider.qml (.../RangeSlider.qml) (revision 874a982c1983fea20307a031e09f90a91ca34d75) +++ sources/gui/qml/components/RangeSlider.qml (.../RangeSlider.qml) (revision 278d2553ee91cff36b356bd2ff028ff4764ded60) @@ -274,13 +274,27 @@ } function updateMaxValue(vInStepSegments, vIsIncrementing) { + // Set the "focused" handle to be the maxium handle + curHandler = RangeSlider.HandlerOption.Max + + // In order to use pre-existing rules for handling min/max ranges, need to calculate X of new value let newMaxValue = determineNewValue(_root.maxValue, vInStepSegments, vIsIncrementing) - setMaxValue(newMaxValue) + let newX = ((newMaxValue - _root.minimum)*_root.width) / (_root.maximum - _root.minimum) + + // Update the boundary + setBound(newX) } function updateMinValue(vInStepSegments, vIsIncrementing) { + // Set the "focused" handle to be the minium handle + curHandler = RangeSlider.HandlerOption.Min + + // In order to use pre-existing rules for handling min/max ranges, need to calculate X of new value let newMinValue = determineNewValue(_root.minValue, vInStepSegments, vIsIncrementing) - setMinValue(newMinValue) + let newX = ((newMinValue - _root.minimum)*_root.width) / (_root.maximum - _root.minimum) + + // Update the boundary + setBound(newX) } /// The main range rectangle bar - This is the "highlighted" area of the slider