diff --git a/crates/gpui2/src/elements/div.rs b/crates/gpui2/src/elements/div.rs index e011041bae2259f8a290ef098b061740721f4307..061ec095f8917517c38c7c4ce71d3e95ff03d7f6 100644 --- a/crates/gpui2/src/elements/div.rs +++ b/crates/gpui2/src/elements/div.rs @@ -209,15 +209,15 @@ where cx: &mut ViewContext, ) -> Self::ElementState { let mut element_state = element_state.unwrap_or_default(); - self.focus - .initialize(element_state.focus_handle.take(), cx, |focus_handle, cx| { - element_state.focus_handle = focus_handle; - self.interaction.initialize(cx, |cx| { + self.interaction.initialize(cx, |cx| { + self.focus + .initialize(element_state.focus_handle.take(), cx, |focus_handle, cx| { + element_state.focus_handle = focus_handle; for child in &mut self.children { child.initialize(view_state, cx); } }) - }); + }); element_state }