From e046d9428473fba74e4508776063904ec786aab4 Mon Sep 17 00:00:00 2001 From: Aylur Date: Sun, 14 Jul 2024 16:32:12 +0200 Subject: feat(slider): dragged signal --- src/widget/slider.vala | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/widget/slider.vala') diff --git a/src/widget/slider.vala b/src/widget/slider.vala index e41e2e8..4fa1216 100644 --- a/src/widget/slider.vala +++ b/src/widget/slider.vala @@ -6,6 +6,9 @@ public class Slider : Gtk.Scale { set { orientation = value ? Gtk.Orientation.VERTICAL : Gtk.Orientation.HORIZONTAL; } } + // emitted when the user drags the slider + public signal void dragged (); + construct { if (adjustment == null) adjustment = new Gtk.Adjustment(0,0,0,0,0,0); @@ -30,13 +33,18 @@ public class Slider : Gtk.Scale { value += step; dragging = false; }); + + value_changed.connect(() => { + if (dragging) + dragged(); + }); } public bool dragging { get; private set; } public double value { get { return adjustment.value; } - set { adjustment.value = value; } + set { if (!dragging) adjustment.value = value; } } public double min { -- cgit v1.2.3