diff --git a/crates/gpui3/src/elements/div.rs b/crates/gpui3/src/elements/div.rs index 7aaaa3dbe7b389595f6cb259f7195bf22c7f02c0..d110d811320e1b462259b3bb4e99209ea1deeec5 100644 --- a/crates/gpui3/src/elements/div.rs +++ b/crates/gpui3/src/elements/div.rs @@ -331,17 +331,19 @@ where element_state: Option, cx: &mut ViewContext, ) -> (LayoutId, Self::ElementState) { - self.with_element_id(cx, |this, cx| { - let layout_ids = this - .children - .iter_mut() - .map(|child| child.layout(view_state, cx)) - .collect::>(); - - let element_state = element_state.unwrap_or_default(); - let style = this.compute_style(Bounds::default(), &element_state, cx); - let layout_id = cx.request_layout(&style, layout_ids); - (layout_id, element_state) + let element_state = element_state.unwrap_or_default(); + let style = self.compute_style(Bounds::default(), &element_state, cx); + style.apply_text_style(cx, |cx| { + self.with_element_id(cx, |this, cx| { + let layout_ids = this + .children + .iter_mut() + .map(|child| child.layout(view_state, cx)) + .collect::>(); + + let layout_id = cx.request_layout(&style, layout_ids); + (layout_id, element_state) + }) }) }