Index: sources/gui/qml/components/ValueControl.qml =================================================================== diff -u -r7dd8afa47f44f25221b167e3dc506df6dd287606 -r8b84749609138274fb1b899c7862239f12ea2f41 --- sources/gui/qml/components/ValueControl.qml (.../ValueControl.qml) (revision 7dd8afa47f44f25221b167e3dc506df6dd287606) +++ sources/gui/qml/components/ValueControl.qml (.../ValueControl.qml) (revision 8b84749609138274fb1b899c7862239f12ea2f41) @@ -82,7 +82,7 @@ MouseArea { id: _sliderMouseArea property bool grabbed: false - anchors.fill: parent + anchors.fill : parent pressAndHoldInterval: _root.holdInterval onClicked: { @@ -104,15 +104,24 @@ onPositionChanged: { if (grabbed) { + if ( _slider.opacity === 0 ) { _animator.start() } + _slider.pos = Math.max(0, Math.min(1, mouse.x / parent.width)) let raw = _slider.from + _slider.pos * (_slider.to - _slider.from) let stepped = Math.round((raw - _slider.from) / _root.step) * _root.step + _slider.from _root.value = stepped } } + + onExited: { + if ( ! _sliderMouseArea.grabbed ) { + _animator.stop() + _slider.opacity = 0 + } + } } - OpacityAnimator { + OpacityAnimator { id: _animator target : _slider from : 0 to : 1