From c5fffd6e2c48aa7fb8b45b8bdcd972bbd8ce900b Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Fri, 29 Nov 2024 21:11:02 +0300 Subject: Initial WIP floating window implementation --- src/input/mod.rs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/input/mod.rs') diff --git a/src/input/mod.rs b/src/input/mod.rs index 13ed6d7f..4e264b06 100644 --- a/src/input/mod.rs +++ b/src/input/mod.rs @@ -1294,6 +1294,25 @@ impl State { } } } + Action::ToggleWindowFloating => { + self.niri.layout.toggle_window_floating(None); + // FIXME: granular + self.niri.queue_redraw_all(); + } + Action::ToggleWindowFloatingById(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_floating(Some(&window)); + // FIXME: granular + self.niri.queue_redraw_all(); + } + } + Action::SwitchFocusBetweenFloatingAndTiling => { + self.niri.layout.switch_focus_floating_tiling(); + // FIXME: granular + self.niri.queue_redraw_all(); + } } } -- cgit