diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2024-12-27 09:58:22 +0300 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2024-12-30 20:12:37 +0300 |
| commit | 6fba4c371e7868f8d581cf3d49d611cdbb590ad4 (patch) | |
| tree | 801c85e1ff6df4c9cdb9bcc916e91de70710a512 /niri-config/src/lib.rs | |
| parent | 27911431dbfb8ad5e17ea295a9ae69847577260f (diff) | |
| download | niri-6fba4c371e7868f8d581cf3d49d611cdbb590ad4.tar.gz niri-6fba4c371e7868f8d581cf3d49d611cdbb590ad4.tar.bz2 niri-6fba4c371e7868f8d581cf3d49d611cdbb590ad4.zip | |
Implement default-window-height window rule
Only works for floats that aren't initially fullscreen atm.
Diffstat (limited to 'niri-config/src/lib.rs')
| -rw-r--r-- | niri-config/src/lib.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/niri-config/src/lib.rs b/niri-config/src/lib.rs index 607d8f37..b1543b56 100644 --- a/niri-config/src/lib.rs +++ b/niri-config/src/lib.rs @@ -705,7 +705,7 @@ pub enum PresetSize { Fixed(#[knuffel(argument)] i32), } -#[derive(Debug, Clone, PartialEq)] +#[derive(Debug, Clone, Copy, PartialEq)] pub struct DefaultPresetSize(pub Option<PresetSize>); #[derive(knuffel::Decode, Debug, Default, Clone, Copy, PartialEq)] @@ -975,6 +975,8 @@ pub struct WindowRule { // Rules applied at initial configure. #[knuffel(child)] pub default_column_width: Option<DefaultPresetSize>, + #[knuffel(child)] + pub default_window_height: Option<DefaultPresetSize>, #[knuffel(child, unwrap(argument))] pub open_on_output: Option<String>, #[knuffel(child, unwrap(argument))] @@ -3145,6 +3147,7 @@ mod tests { open-fullscreen false open-floating false open-focused true + default-window-height { fixed 500; } focus-ring { off @@ -3425,6 +3428,7 @@ mod tests { open_fullscreen: Some(false), open_floating: Some(false), open_focused: Some(true), + default_window_height: Some(DefaultPresetSize(Some(PresetSize::Fixed(500)))), focus_ring: BorderRule { off: true, width: Some(FloatOrInt(3.)), |
