Clear composer on fork (#3445)

Fixes this

<img width="344" height="51" alt="image"
src="https://github.com/user-attachments/assets/f227d338-b044-4f8d-bf07-87499b4230d8"
/>
This commit is contained in:
Ahmed Ibrahim
2025-09-11 11:45:17 -07:00
committed by GitHub
parent 167154178b
commit 167b4f0e25
3 changed files with 10 additions and 1 deletions

View File

@@ -335,7 +335,7 @@ impl App {
self.trim_transcript_for_backtrack(drop_count); self.trim_transcript_for_backtrack(drop_count);
self.render_transcript_once(tui); self.render_transcript_once(tui);
if !prefill.is_empty() { if !prefill.is_empty() {
self.chat_widget.insert_str(prefill); self.chat_widget.set_composer_text(prefill.to_string());
} }
tui.frame_requester().schedule_frame(); tui.frame_requester().schedule_frame();
} }

View File

@@ -243,6 +243,10 @@ impl ChatComposer {
/// Replace the entire composer content with `text` and reset cursor. /// Replace the entire composer content with `text` and reset cursor.
pub(crate) fn set_text_content(&mut self, text: String) { pub(crate) fn set_text_content(&mut self, text: String) {
// Clear any existing content, placeholders, and attachments first.
self.textarea.set_text("");
self.pending_pastes.clear();
self.attached_images.clear();
self.textarea.set_text(&text); self.textarea.set_text(&text);
self.textarea.set_cursor(0); self.textarea.set_cursor(0);
self.sync_command_popup(); self.sync_command_popup();

View File

@@ -1316,6 +1316,11 @@ impl ChatWidget {
self.bottom_pane.insert_str(text); self.bottom_pane.insert_str(text);
} }
/// Replace the composer content with the provided text and reset cursor.
pub(crate) fn set_composer_text(&mut self, text: String) {
self.bottom_pane.set_composer_text(text);
}
pub(crate) fn show_esc_backtrack_hint(&mut self) { pub(crate) fn show_esc_backtrack_hint(&mut self) {
self.bottom_pane.show_esc_backtrack_hint(); self.bottom_pane.show_esc_backtrack_hint();
} }