diff --git a/Cargo.lock b/Cargo.lock index f350ab46b0b6f7c8cb443c0fbc546487bbac9c98..c9e1ab3f2b6c1dce78f675db5456c2ab7dbbea5a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -7117,6 +7117,7 @@ dependencies = [ name = "quick_action_bar2" version = "0.1.0" dependencies = [ + "assistant2", "editor2", "gpui2", "search2", diff --git a/crates/quick_action_bar2/Cargo.toml b/crates/quick_action_bar2/Cargo.toml index 32f440d202648b5c0dba8071d7aa5e49d4da18db..678e5c16f1cbbb26ee5ab39113e1a1a8d572ea50 100644 --- a/crates/quick_action_bar2/Cargo.toml +++ b/crates/quick_action_bar2/Cargo.toml @@ -9,7 +9,7 @@ path = "src/quick_action_bar.rs" doctest = false [dependencies] -#assistant = { path = "../assistant" } +assistant = { package = "assistant2", path = "../assistant2" } editor = { package = "editor2", path = "../editor2" } gpui = { package = "gpui2", path = "../gpui2" } search = { package = "search2", path = "../search2" } diff --git a/crates/quick_action_bar2/src/quick_action_bar.rs b/crates/quick_action_bar2/src/quick_action_bar.rs index 3686ace2fb0b73a530a98681a5639c3a1bfc71e4..91e0f54e7fe3f04deb2540e1e59c8aac38a8fdea 100644 --- a/crates/quick_action_bar2/src/quick_action_bar.rs +++ b/crates/quick_action_bar2/src/quick_action_bar.rs @@ -1,4 +1,4 @@ -// use assistant::{assistant_panel::InlineAssist, AssistantPanel}; +use assistant::{AssistantPanel, InlineAssist}; use editor::Editor; use gpui::{ @@ -15,7 +15,6 @@ pub struct QuickActionBar { buffer_search_bar: View, active_item: Option>, _inlay_hints_enabled_subscription: Option, - #[allow(unused)] workspace: WeakView, } @@ -56,21 +55,25 @@ impl Render for QuickActionBar { "toggle inline assistant", Icon::MagicWand, false, - Box::new(gpui::NoAction), + Box::new(InlineAssist), "Inline assistant", - |_, _cx| todo!(), + { + let workspace = self.workspace.clone(); + move |_, cx| { + if let Some(workspace) = workspace.upgrade() { + workspace.update(cx, |workspace, cx| { + AssistantPanel::inline_assist(workspace, &InlineAssist, cx); + }); + } + } + }, ); h_stack() .id("quick action bar") .p_1() .gap_2() .child(search_button) - .child( - div() - .border() - .border_color(gpui::red()) - .child(assistant_button), - ) + .child(assistant_button) } } diff --git a/crates/ui2/src/components/tooltip.rs b/crates/ui2/src/components/tooltip.rs index cc17a610f4bd532cfc25669352643e1b0dc6a648..7c502ac5cb13a4322db626602feedcd34edccdce 100644 --- a/crates/ui2/src/components/tooltip.rs +++ b/crates/ui2/src/components/tooltip.rs @@ -84,6 +84,7 @@ impl Render for Tooltip { .px_2() .child( h_stack() + .gap_2() .child(self.title.clone()) .when_some(self.key_binding.clone(), |this, key_binding| { this.justify_between().child(key_binding)