From d92598f8e930fd0630cf9af3eea7fb7e768a599e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20L=C3=A4ubrich?= Date: Tue, 28 May 2024 15:44:26 +0200 Subject: [PATCH] Disable move on double-click Sometimes it could happen that if one double click on a control the slider "hangs" from then on as the control does not receive a "MousUp" event and then the follow the mouse without actually holding it down. This now additionally registers a MouseDoubleClick handler that disable the move operation. --- .../nebula/widgets/opal/nebulaslider/NebulaSlider.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/widgets/nebulaslider/org.eclipse.nebula.widgets.nebulaslider/src/org/eclipse/nebula/widgets/opal/nebulaslider/NebulaSlider.java b/widgets/nebulaslider/org.eclipse.nebula.widgets.nebulaslider/src/org/eclipse/nebula/widgets/opal/nebulaslider/NebulaSlider.java index fb80d3e01..5d0ec3a2f 100644 --- a/widgets/nebulaslider/org.eclipse.nebula.widgets.nebulaslider/src/org/eclipse/nebula/widgets/opal/nebulaslider/NebulaSlider.java +++ b/widgets/nebulaslider/org.eclipse.nebula.widgets.nebulaslider/src/org/eclipse/nebula/widgets/opal/nebulaslider/NebulaSlider.java @@ -266,8 +266,15 @@ private void addMouseListeners() { mouseDeltaX = xPosition - e.x; } }); + addListener(SWT.MouseDoubleClick, e -> { + moving = false; + mouseDeltaX = 0; + }); addListener(SWT.MouseUp, e -> { + if(!moving) { + return; + } moving = false; mouseDeltaX = 0; if(movingValue != value) {