From e1fad994da9565b43c7fb139cb2fb7bf404cc320 Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Tue, 2 Sep 2025 08:07:22 +0300 Subject: Implement maximize-to-edges (true Wayland maximize) --- src/handlers/mod.rs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/handlers/mod.rs') diff --git a/src/handlers/mod.rs b/src/handlers/mod.rs index 3b673fa0..73575b45 100644 --- a/src/handlers/mod.rs +++ b/src/handlers/mod.rs @@ -550,6 +550,20 @@ impl ForeignToplevelHandler for State { self.niri.layout.set_fullscreen(&window, false); } } + + fn set_maximized(&mut self, wl_surface: WlSurface) { + if let Some((mapped, _)) = self.niri.layout.find_window_and_output(&wl_surface) { + let window = mapped.window.clone(); + self.niri.layout.set_maximized(&window, true); + } + } + + fn unset_maximized(&mut self, wl_surface: WlSurface) { + if let Some((mapped, _)) = self.niri.layout.find_window_and_output(&wl_surface) { + let window = mapped.window.clone(); + self.niri.layout.set_maximized(&window, false); + } + } } delegate_foreign_toplevel!(State); -- cgit