1
0
Fork 0
forked from wry/wry

tree: allow focusing workspace nodes

This commit is contained in:
khyperia 2025-12-24 15:53:31 +01:00 committed by Julian Orth
parent dd3f8bad40
commit 5bb19f3ca7
12 changed files with 76 additions and 22 deletions

View file

@ -366,17 +366,23 @@ impl Node for WorkspaceNode {
seat.focus_node(last);
} else if let Some(container) = self.container.get() {
container.node_do_focus(seat, direction);
} else if let Some(float) = self
} else if let Some(child) = self
.stacked
.rev_iter()
.find_map(|node| (*node).clone().node_into_float())
.filter_map(|node| (*node).clone().node_into_float())
.find_map(|float| float.child.get())
{
if let Some(child) = float.child.get() {
child.node_do_focus(seat, direction);
}
child.node_do_focus(seat, direction);
} else {
seat.focus_node(self);
}
}
fn node_active_changed(&self, _active: bool) {
let output = self.output.get();
self.state.damage(output.bar_separator_rect.get());
}
fn node_find_tree_at(
&self,
x: i32,