diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/widget/slider.vala | 10 |
1 files changed, 9 insertions, 1 deletions
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 { |