Index: sources/gui/qml/components/RangeSlider.qml =================================================================== diff -u -rb07e8c91cabe64f9bc29b3653d27083b5cf96cb5 -r9ac163d4aeadc39a1bcd1d8110991f32e37fc806 --- sources/gui/qml/components/RangeSlider.qml (.../RangeSlider.qml) (revision b07e8c91cabe64f9bc29b3653d27083b5cf96cb5) +++ sources/gui/qml/components/RangeSlider.qml (.../RangeSlider.qml) (revision 9ac163d4aeadc39a1bcd1d8110991f32e37fc806) @@ -248,7 +248,7 @@ radius : _root.isRoundedEnds ? (height/2) : Variables.rangeRectRadius border.width: _root.hasBorder ? Variables.rangeRectBorderWidth : 0 - border.color: (_root.minAdjusted && _root.maxAdjusted) ? Colors.borderButton : Colors.borderDisableButton + border.color: (_root.minAdjusted && _root.maxAdjusted) ? Colors.sliderProgressBorderActive : Colors.borderDisableButton decimal : _root.decimal Index: sources/gui/qml/components/Slider.qml =================================================================== diff -u -rb07e8c91cabe64f9bc29b3653d27083b5cf96cb5 -r9ac163d4aeadc39a1bcd1d8110991f32e37fc806 --- sources/gui/qml/components/Slider.qml (.../Slider.qml) (revision b07e8c91cabe64f9bc29b3653d27083b5cf96cb5) +++ sources/gui/qml/components/Slider.qml (.../Slider.qml) (revision 9ac163d4aeadc39a1bcd1d8110991f32e37fc806) @@ -67,6 +67,8 @@ } function updateValue(vInStepSegments, vIsIncrement) { + _root.isActive = true + let amountChanged = 1 if (vInStepSegments) { amountChanged = step @@ -104,11 +106,7 @@ // This is to resolve the use of slider with a switch and arrows enabled. // It allows correct behavior when using arrow on a first initialize increment of // the slider when the slider has inActiveZero to true. - if (!isActive) { - value = inActiveZero ? 0 : minimum - } else { - value = initActiveValue - } + value = (inActiveZero && (!isActive)) ? 0 : initActiveValue activeChanged() // emit } @@ -231,12 +229,13 @@ lineTickMarkThickness : _root.tickMarksThickness isTickMarkRound : _root.isRoundedEnds yDisplacement : _root.isRoundedEnds ? (-_handler.height/2 - _handler.border.width/2) : 0 - color: _root.isActive ? Colors.borderButton : Colors.borderDisableButton + color : _root.isActive ? Colors.borderButton : Colors.borderDisableButton } } ProgressRect { id: _progressRect property real previousSliderValue: Number.NaN + value : (inActiveZero && (!isActive)) ? 0 : initActiveValue color : Colors.sliderHighlightColor decimal : _root.decimal minimum : _root.minimum @@ -292,11 +291,15 @@ _root.isActive = true } - // On initial press without release, the value is updated to reflect the current - // pressed position, effectively moving the handle to the location without snapping + // On a pressed action, if the snapped version of the new value is the same as the + // current snapped value, do nothing; otherwise update the value to stay under + // the cursor until a release action happens to update to new snapped value let adjustedXPosition = vMouseEvent.x - _progressRect.leftRightTouchMargin let newCurrentValue = calculateValue(adjustedXPosition, !stepSnapOnRelease) - update(newCurrentValue) + let roundedNewNumber = calculateRoundedValue(newCurrentValue) + if(roundedNewNumber != _progressRect.value){ + update(newCurrentValue) + } } onReleased: { // Need to account for the extended touch areas Index: sources/gui/qml/components/SliderCreateTreatment.qml =================================================================== diff -u -r74de6c3e36568bf842648d1a9f8d5bb6949fca5b -r9ac163d4aeadc39a1bcd1d8110991f32e37fc806 --- sources/gui/qml/components/SliderCreateTreatment.qml (.../SliderCreateTreatment.qml) (revision 74de6c3e36568bf842648d1a9f8d5bb6949fca5b) +++ sources/gui/qml/components/SliderCreateTreatment.qml (.../SliderCreateTreatment.qml) (revision 9ac163d4aeadc39a1bcd1d8110991f32e37fc806) @@ -120,13 +120,12 @@ isActive : _root.active ticks : true onDragged : { setInteractive(false) ; ; setActiveValid( );} - onPressed : { setInteractive(false) ; _root.pressed ( ) ; } + onPressed : { setInteractive(false) ; _root.pressed ( ) ; setActiveValid( );} onReleased : { setInteractive(true ) ; _root.released( ) ; } onHandleSelected : { setActiveValid(); } } SliderArrows{ id:_sliderArrows - visible : true anchors.verticalCenter : _slider.verticalCenter anchors.left : _slider.right anchors.leftMargin : Variables.sliderAdjustButtonLeftMargin Index: sources/gui/qml/compounds/PressureRangeSlider.qml =================================================================== diff -u -r89426b2b3d45008f5e6cb19e0c7adef3a242ce36 -r9ac163d4aeadc39a1bcd1d8110991f32e37fc806 --- sources/gui/qml/compounds/PressureRangeSlider.qml (.../PressureRangeSlider.qml) (revision 89426b2b3d45008f5e6cb19e0c7adef3a242ce36) +++ sources/gui/qml/compounds/PressureRangeSlider.qml (.../PressureRangeSlider.qml) (revision 9ac163d4aeadc39a1bcd1d8110991f32e37fc806) @@ -150,14 +150,12 @@ rightMargin : _pressureRangeBar.maxDiff } - height : 5 diameter: Variables.sliderCircleDiameter decimal : 1 bgColor : Colors.pressuresOutOfRaneBg - isRoundedEnds: false - hasBorder : false + hasAdjust : true // imply that both handle need to be adjusted to mark as active minText { text : qsTr("LOW") @@ -196,6 +194,10 @@ step : _root.step ticks : _root.ticksVisible + // The min/max edge line markers visibility + minVerticalEdgeVisible: false + maxVerticalEdgeVisible: false + onMinValueChanged: { lowerBound = minValue } Index: sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentFlow.qml =================================================================== diff -u -r922dd892062a850dc966fdc632686e401a355db3 -r9ac163d4aeadc39a1bcd1d8110991f32e37fc806 --- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentFlow.qml (.../TreatmentAdjustmentFlow.qml) (revision 922dd892062a850dc966fdc632686e401a355db3) +++ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentFlow.qml (.../TreatmentAdjustmentFlow.qml) (revision 9ac163d4aeadc39a1bcd1d8110991f32e37fc806) @@ -102,9 +102,9 @@ unit : Variables.unitTextFlowRate step : Variables.bloodFlowResolution ticks : true + isActive: false } SliderArrows{ id:_bloodFlowSliderArrows - visible : true anchors.verticalCenter : _bloodFlowSlider.verticalCenter onIncrementValue : _bloodFlowSlider.incrementValue(true) onDecrementValue : _bloodFlowSlider.decrementValue(true) @@ -135,9 +135,9 @@ unit : Variables.unitTextFlowRate step : Variables.dialysateFlowResolution ticks : true + isActive: false } SliderArrows{ id:_dialysateFlowSliderArrows - visible : true anchors.verticalCenter : _dialysateFlowSlider.verticalCenter onIncrementValue : _dialysateFlowSlider.incrementValue(true) onDecrementValue : _dialysateFlowSlider.decrementValue(true) Index: sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationEdit.qml =================================================================== diff -u -rcc9d7bbec68ebc656ca626f47fd6f515f7cc3757 -r9ac163d4aeadc39a1bcd1d8110991f32e37fc806 --- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationEdit.qml (.../TreatmentAdjustmentUltrafiltrationEdit.qml) (revision cc9d7bbec68ebc656ca626f47fd6f515f7cc3757) +++ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationEdit.qml (.../TreatmentAdjustmentUltrafiltrationEdit.qml) (revision 9ac163d4aeadc39a1bcd1d8110991f32e37fc806) @@ -88,7 +88,6 @@ top: _rangeProgressBar.bottom topMargin: 50 } - bgColor: "#0c2135" x : _rangeProgressBar.x + minGapWidth + _rangeProgressBar.progressWidth width : _rangeProgressBar.width - maxGapWidth - minGapWidth - _rangeProgressBar.progressWidth