diff --git a/src/tree/float.rs b/src/tree/float.rs index 7ac868d0..7f191216 100644 --- a/src/tree/float.rs +++ b/src/tree/float.rs @@ -10,8 +10,8 @@ use { state::State, text::{self, TextTexture}, tree::{ - walker::NodeVisitor, ContainingNode, FindTreeResult, FoundNode, Node, NodeId, - StackedNode, ToplevelNode, WorkspaceNode, + walker::NodeVisitor, ContainingNode, Direction, FindTreeResult, FoundNode, Node, + NodeId, StackedNode, ToplevelNode, WorkspaceNode, }, utils::{ clonecell::CloneCell, copyhashmap::CopyHashMap, double_click_state::DoubleClickState, @@ -490,6 +490,11 @@ impl Node for FloatNode { if state != KeyState::Pressed { return; } + if seat_data.op_type == OpType::Move { + if let Some(tl) = self.child.get() { + tl.node_do_focus(seat, Direction::Unspecified); + } + } if seat_data .double_click_state .click(&self.state, time_usec, seat_data.x, seat_data.y)