diff options
| author | Said Kadrioski <said@kadrioski.de> | 2025-08-28 03:42:04 +0200 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2025-08-29 09:13:52 +0300 |
| commit | 0c3223ac72f3bee35c954764c2012f0d495deeb0 (patch) | |
| tree | 5877b977aa4000f0fdb8ba22c9dbdc85062193f8 /src/input/mod.rs | |
| parent | 1ffda91e0cc3938af1a9d4f1f1b6a87afa3c210f (diff) | |
| download | niri-0c3223ac72f3bee35c954764c2012f0d495deeb0.tar.gz niri-0c3223ac72f3bee35c954764c2012f0d495deeb0.tar.bz2 niri-0c3223ac72f3bee35c954764c2012f0d495deeb0.zip | |
Add cycle back feature for presets of column/window width/height.
Diffstat (limited to 'src/input/mod.rs')
| -rw-r--r-- | src/input/mod.rs | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/src/input/mod.rs b/src/input/mod.rs index 95d84b87..9fc48c09 100644 --- a/src/input/mod.rs +++ b/src/input/mod.rs @@ -1442,26 +1442,49 @@ impl State { self.niri.queue_redraw_all(); } Action::SwitchPresetColumnWidth => { - self.niri.layout.toggle_width(); + self.niri.layout.toggle_width(true); + } + Action::SwitchPresetColumnWidthBack => { + self.niri.layout.toggle_width(false); } Action::SwitchPresetWindowWidth => { - self.niri.layout.toggle_window_width(None); + self.niri.layout.toggle_window_width(None, true); + } + Action::SwitchPresetWindowWidthBack => { + self.niri.layout.toggle_window_width(None, false); } Action::SwitchPresetWindowWidthById(id) => { let window = self.niri.layout.windows().find(|(_, m)| m.id().get() == id); let window = window.map(|(_, m)| m.window.clone()); if let Some(window) = window { - self.niri.layout.toggle_window_width(Some(&window)); + self.niri.layout.toggle_window_width(Some(&window), true); + } + } + Action::SwitchPresetWindowWidthBackById(id) => { + let window = self.niri.layout.windows().find(|(_, m)| m.id().get() == id); + let window = window.map(|(_, m)| m.window.clone()); + if let Some(window) = window { + self.niri.layout.toggle_window_width(Some(&window), false); } } Action::SwitchPresetWindowHeight => { - self.niri.layout.toggle_window_height(None); + self.niri.layout.toggle_window_height(None, true); + } + Action::SwitchPresetWindowHeightBack => { + self.niri.layout.toggle_window_height(None, false); } Action::SwitchPresetWindowHeightById(id) => { let window = self.niri.layout.windows().find(|(_, m)| m.id().get() == id); let window = window.map(|(_, m)| m.window.clone()); if let Some(window) = window { - self.niri.layout.toggle_window_height(Some(&window)); + self.niri.layout.toggle_window_height(Some(&window), true); + } + } + Action::SwitchPresetWindowHeightBackById(id) => { + let window = self.niri.layout.windows().find(|(_, m)| m.id().get() == id); + let window = window.map(|(_, m)| m.window.clone()); + if let Some(window) = window { + self.niri.layout.toggle_window_height(Some(&window), false); } } Action::CenterColumn => { |
