Allow attaching text threads as context (#29947)

Release Notes:

- N/A

---------

Co-authored-by: Michael Sloan <mgsloan@gmail.com>
This commit is contained in:
Max Brunsfeld 2025-05-05 13:59:21 -07:00 committed by GitHub
parent 7f868a2eff
commit dd79c29af9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
24 changed files with 784 additions and 245 deletions

View file

@ -6,7 +6,7 @@ use crate::context_store::ContextStore;
use crate::context_strip::{ContextStrip, ContextStripEvent, SuggestContextKind};
use crate::message_editor::{extract_message_creases, insert_message_creases};
use crate::terminal_codegen::TerminalCodegen;
use crate::thread_store::ThreadStore;
use crate::thread_store::{TextThreadStore, ThreadStore};
use crate::{CycleNextInlineAssist, CyclePreviousInlineAssist};
use crate::{RemoveAllContext, ToggleContextPicker};
use client::ErrorExt;
@ -846,6 +846,7 @@ impl PromptEditor<BufferCodegen> {
context_store: Entity<ContextStore>,
workspace: WeakEntity<Workspace>,
thread_store: Option<WeakEntity<ThreadStore>>,
text_thread_store: Option<WeakEntity<TextThreadStore>>,
window: &mut Window,
cx: &mut Context<PromptEditor<BufferCodegen>>,
) -> PromptEditor<BufferCodegen> {
@ -889,6 +890,7 @@ impl PromptEditor<BufferCodegen> {
workspace.clone(),
context_store.downgrade(),
thread_store.clone(),
text_thread_store.clone(),
prompt_editor_entity,
codegen_buffer.as_ref().map(Entity::downgrade),
))));
@ -902,6 +904,7 @@ impl PromptEditor<BufferCodegen> {
context_store.clone(),
workspace.clone(),
thread_store.clone(),
text_thread_store.clone(),
context_picker_menu_handle.clone(),
SuggestContextKind::Thread,
window,
@ -1023,6 +1026,7 @@ impl PromptEditor<TerminalCodegen> {
context_store: Entity<ContextStore>,
workspace: WeakEntity<Workspace>,
thread_store: Option<WeakEntity<ThreadStore>>,
text_thread_store: Option<WeakEntity<TextThreadStore>>,
window: &mut Window,
cx: &mut Context<Self>,
) -> Self {
@ -1059,6 +1063,7 @@ impl PromptEditor<TerminalCodegen> {
workspace.clone(),
context_store.downgrade(),
thread_store.clone(),
text_thread_store.clone(),
prompt_editor_entity,
None,
))));
@ -1072,6 +1077,7 @@ impl PromptEditor<TerminalCodegen> {
context_store.clone(),
workspace.clone(),
thread_store.clone(),
text_thread_store.clone(),
context_picker_menu_handle.clone(),
SuggestContextKind::Thread,
window,