diff options
| author | Viktor Pocedulic <kvik@a-b.xyz> | 2024-02-14 16:24:46 +0100 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2024-02-15 10:27:12 +0400 |
| commit | 363e1d876492a26a1b7d5261ac28aba94f323d08 (patch) | |
| tree | 9f2884ff4f5ea28215b53bc3c503260dec6e48b1 /niri-config/src | |
| parent | 8e1d4de0dccdf14cb60d505cd0864a40e56a33d8 (diff) | |
| download | niri-363e1d876492a26a1b7d5261ac28aba94f323d08.tar.gz niri-363e1d876492a26a1b7d5261ac28aba94f323d08.tar.bz2 niri-363e1d876492a26a1b7d5261ac28aba94f323d08.zip | |
input: enable configuring of trackpoint devices
Diffstat (limited to 'niri-config/src')
| -rw-r--r-- | niri-config/src/lib.rs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/niri-config/src/lib.rs b/niri-config/src/lib.rs index 564b0b9f..fdf3d700 100644 --- a/niri-config/src/lib.rs +++ b/niri-config/src/lib.rs @@ -57,6 +57,8 @@ pub struct Input { #[knuffel(child, default)] pub mouse: Mouse, #[knuffel(child, default)] + pub trackpoint: Trackpoint, + #[knuffel(child, default)] pub tablet: Tablet, #[knuffel(child)] pub disable_power_key_handling: bool, @@ -151,6 +153,16 @@ pub struct Mouse { pub accel_profile: Option<AccelProfile>, } +#[derive(knuffel::Decode, Debug, Default, PartialEq)] +pub struct Trackpoint { + #[knuffel(child)] + pub natural_scroll: bool, + #[knuffel(child, unwrap(argument), default)] + pub accel_speed: f64, + #[knuffel(child, unwrap(argument, str))] + pub accel_profile: Option<AccelProfile>, +} + #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub enum AccelProfile { Adaptive, @@ -924,6 +936,12 @@ mod tests { accel-profile "flat" } + trackpoint { + natural-scroll + accel-speed 0.0 + accel-profile "flat" + } + tablet { map-to-output "eDP-1" } @@ -1043,6 +1061,11 @@ mod tests { accel_speed: 0.4, accel_profile: Some(AccelProfile::Flat), }, + trackpoint: Trackpoint { + natural_scroll: true, + accel_speed: 0.0, + accel_profile: Some(AccelProfile::Flat), + }, tablet: Tablet { map_to_output: Some("eDP-1".to_owned()), }, |
