diff --git a/docs/modules/Custom.md b/docs/modules/Custom.md index 6d33749..52588b9 100644 --- a/docs/modules/Custom.md +++ b/docs/modules/Custom.md @@ -87,6 +87,7 @@ If your input program requires an integer, you will need to round it. | `max` | `float` | `100` | Maximum slider value. | | `step` | `float` | - | The increment to change when scrolling with the mouse wheel. If left blank, will use the default determined by the environment. | | `length` | `integer` | `null` | Slider length. GTK will automatically size if left unset. | +| `show_label` | `boolean` | `true` | Whether to show the value label above the slider. | The example slider widget below shows a volume control for MPC, which updates the server when changed, and polls the server for volume changes to keep the slider in sync. diff --git a/src/modules/custom/slider.rs b/src/modules/custom/slider.rs index f777b1c..b6f7fbd 100644 --- a/src/modules/custom/slider.rs +++ b/src/modules/custom/slider.rs @@ -24,6 +24,8 @@ pub struct SliderWidget { max: f64, step: Option, length: Option, + #[serde(default = "crate::config::default_true")] + show_label: bool, } const fn default_min() -> f64 { @@ -51,6 +53,7 @@ impl CustomWidget for SliderWidget { } scale.set_range(self.min, self.max); + scale.set_draw_value(self.show_label); if let Some(on_change) = self.on_change { let min = self.min;