From 3539798e9c5bf3687484272223e33d695b76fdf4 Mon Sep 17 00:00:00 2001 From: temportalflux Date: Mon, 22 Jun 2026 14:11:07 -0400 Subject: [PATCH] disable text layout in preparation for a full rewrite taking into account the existing TextLayout implementation --- .../src/editable_text/shared_element.rs | 26 +++++++++---------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/crates/gpui_elements/src/editable_text/shared_element.rs b/crates/gpui_elements/src/editable_text/shared_element.rs index 89d81e26f6..64571a02b0 100644 --- a/crates/gpui_elements/src/editable_text/shared_element.rs +++ b/crates/gpui_elements/src/editable_text/shared_element.rs @@ -37,7 +37,6 @@ impl PrepaintElement { #[doc(hidden)] pub struct LayoutState { pub state: Entity, - pub text_style: TextStyle, } #[doc(hidden)] @@ -74,30 +73,26 @@ pub trait EditableTextElement: InteractiveElement + EditableInputActionElement { } }; - let mut resolved_text_style = None; - + // TODO: This required a gpui api change in order to sync the focus handle between Interactivity and TextInputStateBase self.interactivity() .track_focus(state.read(cx).focus_handle(cx)); + let layout_id = self.interactivity().request_layout( global_id, inspector_id, window, cx, - |element_style, window, cx| { - window.with_text_style(element_style.text_style().cloned(), |window| { - resolved_text_style = Some(window.text_style()); + |style, window, cx| { + window.with_text_style(style.text_style().cloned(), |window| { + //let text_style = window.text_style(); - let style = element_style.clone(); - // TODO: Does this need to propagate the line_height as the element's height? - window.request_layout(style, None, cx) + // TODO: allocate the interior text layout and provide it as a child to the interactivity layout + window.request_layout(style.clone(), None, cx) }) }, ); - let layout_state = LayoutState { - state, - text_style: resolved_text_style.unwrap_or_else(|| window.text_style()), - }; + let layout_state = LayoutState { state }; (layout_id, layout_state) } @@ -149,11 +144,12 @@ pub trait EditableTextElement: InteractiveElement + EditableInputActionElement { bounds }; - let text_color = request_layout.text_style.color; + //let text_color = request_layout.text_style.color; let placeholder_color = Hsla::white().opacity(0.5); // TODO: as an element param let selection_color = Hsla::blue().opacity(0.5); // TODO: as an element param let caret_color = Hsla::white(); // TODO: as an element param + /* let wrap_width = self.should_wrap().then_some(inner_bounds.size.width); let showing_placeholder = request_layout.state.update(cx, |state, _cx| { let wrapping = TextLayoutWrapping::new( @@ -181,6 +177,8 @@ pub trait EditableTextElement: InteractiveElement + EditableInputActionElement { } show_placeholder }); + */ + let showing_placeholder = false; let input = request_layout.state.read(cx);