tree: allow focusing workspace nodes
This commit is contained in:
parent
dd3f8bad40
commit
5bb19f3ca7
12 changed files with 76 additions and 22 deletions
|
|
@ -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,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue