From 76175fafa6d3a38d739c0ab016528010040068fc Mon Sep 17 00:00:00 2001 From: Kai Uwe Broulik Date: Mon, 16 Jun 2014 20:07:16 +0200 Subject: [PATCH] Handle mouse wheel events in PlasmaComponents.Slider REVIEW: 118753 --- .../plasmacomponents/qml/Slider.qml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/declarativeimports/plasmacomponents/qml/Slider.qml b/src/declarativeimports/plasmacomponents/qml/Slider.qml index 142040af7..5f4f51579 100644 --- a/src/declarativeimports/plasmacomponents/qml/Slider.qml +++ b/src/declarativeimports/plasmacomponents/qml/Slider.qml @@ -299,6 +299,17 @@ Item { slider.forceActiveFocus() } + onWheel: { + // horizontal scrolling (angleDelta.x) is "inverted" + // this matches QSlider's behavior + var delta = wheel.angleDelta.x ? -wheel.angleDelta.x : wheel.angleDelta.y + if (delta > 0) { // up/right + slider.value += (slider.inverted ? -slider.stepSize : slider.stepSize) + } else if (delta < 0) { + slider.value += (slider.inverted ? slider.stepSize : -slider.stepSize) + } + slider.forceActiveFocus() + } } }