diff --git a/crates/assistant2/src/inline_assistant.rs b/crates/assistant2/src/inline_assistant.rs index 4d4f6aaaf6ef0c729c7e9a4e92d8a8754dae41f0..020e20291375c38dfcc65dd5753debcd6cb3088e 100644 --- a/crates/assistant2/src/inline_assistant.rs +++ b/crates/assistant2/src/inline_assistant.rs @@ -212,12 +212,12 @@ impl InlineAssistant { let handle_assist = |cx: &mut ViewContext| match inline_assist_target { InlineAssistTarget::Editor(active_editor) => { InlineAssistant::update_global(cx, |assistant, cx| { - assistant.assist(&active_editor, Some(cx.view().downgrade()), cx) + assistant.assist(&active_editor, cx.view().downgrade(), cx) }) } InlineAssistTarget::Terminal(active_terminal) => { TerminalInlineAssistant::update_global(cx, |assistant, cx| { - assistant.assist(&active_terminal, Some(cx.view().downgrade()), cx) + assistant.assist(&active_terminal, cx.view().downgrade(), cx) }) } }; @@ -264,7 +264,7 @@ impl InlineAssistant { pub fn assist( &mut self, editor: &View, - workspace: Option>, + workspace: WeakView, cx: &mut WindowContext, ) { let (snapshot, initial_selections) = editor.update(cx, |editor, cx| { @@ -429,7 +429,7 @@ impl InlineAssistant { initial_prompt: String, initial_transaction_id: Option, focus: bool, - workspace: Option>, + workspace: WeakView, cx: &mut WindowContext, ) -> InlineAssistId { let assist_group_id = self.next_assist_group_id.post_inc(); @@ -2166,7 +2166,7 @@ pub struct InlineAssist { decorations: Option, codegen: Model, _subscriptions: Vec, - workspace: Option>, + workspace: WeakView, } impl InlineAssist { @@ -2180,7 +2180,7 @@ impl InlineAssist { end_block_id: CustomBlockId, range: Range, codegen: Model, - workspace: Option>, + workspace: WeakView, cx: &mut WindowContext, ) -> Self { let prompt_editor_focus_handle = prompt_editor.focus_handle(cx); @@ -2240,11 +2240,7 @@ impl InlineAssist { if let CodegenStatus::Error(error) = codegen.read(cx).status(cx) { if assist.decorations.is_none() { - if let Some(workspace) = assist - .workspace - .as_ref() - .and_then(|workspace| workspace.upgrade()) - { + if let Some(workspace) = assist.workspace.upgrade() { let error = format!("Inline assistant error: {}", error); workspace.update(cx, |workspace, cx| { struct InlineAssistantError; @@ -3387,7 +3383,7 @@ impl CodeActionProvider for AssistantCodeActionProvider { "Fix Diagnostics".into(), None, true, - Some(workspace), + workspace, cx, ); assistant.start_assist(assist_id, cx); diff --git a/crates/assistant2/src/terminal_inline_assistant.rs b/crates/assistant2/src/terminal_inline_assistant.rs index 1c5574e1d96f534ee45431402046a9cdf0253617..e3b81979a86ebff88c9327abf38b14397dd104a7 100644 --- a/crates/assistant2/src/terminal_inline_assistant.rs +++ b/crates/assistant2/src/terminal_inline_assistant.rs @@ -82,7 +82,7 @@ impl TerminalInlineAssistant { pub fn assist( &mut self, terminal_view: &View, - workspace: Option>, + workspace: WeakView, cx: &mut WindowContext, ) { let terminal = terminal_view.read(cx).terminal().clone(); @@ -361,7 +361,7 @@ struct TerminalInlineAssist { terminal: WeakView, prompt_editor: Option>, codegen: Model, - workspace: Option>, + workspace: WeakView, _subscriptions: Vec, } @@ -370,7 +370,7 @@ impl TerminalInlineAssist { assist_id: TerminalInlineAssistId, terminal: &View, prompt_editor: View, - workspace: Option>, + workspace: WeakView, cx: &mut WindowContext, ) -> Self { let codegen = prompt_editor.read(cx).codegen.clone(); @@ -396,11 +396,7 @@ impl TerminalInlineAssist { if let CodegenStatus::Error(error) = &codegen.read(cx).status { if assist.prompt_editor.is_none() { - if let Some(workspace) = assist - .workspace - .as_ref() - .and_then(|workspace| workspace.upgrade()) - { + if let Some(workspace) = assist.workspace.upgrade() { let error = format!("Terminal inline assistant error: {}", error); workspace.update(cx, |workspace, cx| {