aboutsummaryrefslogtreecommitdiff
path: root/src/layout/workspace.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/layout/workspace.rs')
-rw-r--r--src/layout/workspace.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/layout/workspace.rs b/src/layout/workspace.rs
index cd1a6261..099b449c 100644
--- a/src/layout/workspace.rs
+++ b/src/layout/workspace.rs
@@ -1146,6 +1146,17 @@ impl<W: LayoutElement> Workspace<W> {
tile.animate_move_from(render_pos - new_render_pos);
}
+ pub fn set_window_floating(&mut self, id: Option<&W::Id>, floating: bool) {
+ if id.map_or(self.floating_is_active.get(), |id| {
+ self.floating.has_window(id)
+ }) == floating
+ {
+ return;
+ }
+
+ self.toggle_window_floating(id);
+ }
+
pub fn switch_focus_floating_tiling(&mut self) {
if self.floating.is_empty() {
// If floating is empty, keep focus on scrolling.