diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2025-09-02 08:07:22 +0300 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2025-10-15 09:04:16 +0300 |
| commit | e1fad994da9565b43c7fb139cb2fb7bf404cc320 (patch) | |
| tree | 305fa0714d66ad2b4346b3aee6eb785099b29fa1 /niri-config/src | |
| parent | e5d4e7c1b1a0b61770b6711a53fe41920d56452d (diff) | |
| download | niri-e1fad994da9565b43c7fb139cb2fb7bf404cc320.tar.gz niri-e1fad994da9565b43c7fb139cb2fb7bf404cc320.tar.bz2 niri-e1fad994da9565b43c7fb139cb2fb7bf404cc320.zip | |
Implement maximize-to-edges (true Wayland maximize)
Diffstat (limited to 'niri-config/src')
| -rw-r--r-- | niri-config/src/binds.rs | 7 | ||||
| -rw-r--r-- | niri-config/src/lib.rs | 1 | ||||
| -rw-r--r-- | niri-config/src/window_rule.rs | 2 |
3 files changed, 10 insertions, 0 deletions
diff --git a/niri-config/src/binds.rs b/niri-config/src/binds.rs index 8a09445d..37ac1665 100644 --- a/niri-config/src/binds.rs +++ b/niri-config/src/binds.rs @@ -303,6 +303,9 @@ pub enum Action { #[knuffel(skip)] SwitchPresetWindowHeightBackById(u64), MaximizeColumn, + MaximizeWindowToEdges, + #[knuffel(skip)] + MaximizeWindowToEdgesById(u64), SetColumnWidth(#[knuffel(argument, str)] SizeChange), ExpandColumnToAvailableWidth, SwitchLayout(#[knuffel(argument, str)] LayoutSwitchTarget), @@ -568,6 +571,10 @@ impl From<niri_ipc::Action> for Action { Self::SwitchPresetWindowHeightBackById(id) } niri_ipc::Action::MaximizeColumn {} => Self::MaximizeColumn, + niri_ipc::Action::MaximizeWindowToEdges { id: None } => Self::MaximizeWindowToEdges, + niri_ipc::Action::MaximizeWindowToEdges { id: Some(id) } => { + Self::MaximizeWindowToEdgesById(id) + } niri_ipc::Action::SetColumnWidth { change } => Self::SetColumnWidth(change), niri_ipc::Action::ExpandColumnToAvailableWidth {} => Self::ExpandColumnToAvailableWidth, niri_ipc::Action::SwitchLayout { layout } => Self::SwitchLayout(layout), diff --git a/niri-config/src/lib.rs b/niri-config/src/lib.rs index eb6d48b3..e939f0c3 100644 --- a/niri-config/src/lib.rs +++ b/niri-config/src/lib.rs @@ -1578,6 +1578,7 @@ mod tests { open_maximized: Some( true, ), + open_maximized_to_edges: None, open_fullscreen: Some( false, ), diff --git a/niri-config/src/window_rule.rs b/niri-config/src/window_rule.rs index e4a69ccd..0465d28f 100644 --- a/niri-config/src/window_rule.rs +++ b/niri-config/src/window_rule.rs @@ -24,6 +24,8 @@ pub struct WindowRule { #[knuffel(child, unwrap(argument))] pub open_maximized: Option<bool>, #[knuffel(child, unwrap(argument))] + pub open_maximized_to_edges: Option<bool>, + #[knuffel(child, unwrap(argument))] pub open_fullscreen: Option<bool>, #[knuffel(child, unwrap(argument))] pub open_floating: Option<bool>, |
