From 6c83c7906ae22b25c0930132debda08a86b8284d Mon Sep 17 00:00:00 2001 From: Thorsten Ball Date: Thu, 1 Aug 2024 16:14:31 +0200 Subject: [PATCH] assistant panel: Ensure always active tab is shown (#15618) Small bug that snuck in with #15490. When closing the configuration tab explicitly and then activating the assistant tab again, it wouldn't show the configuration page. Release Notes: - N/A Co-authored-by: Bennet --- crates/assistant/src/assistant_panel.rs | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/crates/assistant/src/assistant_panel.rs b/crates/assistant/src/assistant_panel.rs index c3bc4b9a06..cb92e93f92 100644 --- a/crates/assistant/src/assistant_panel.rs +++ b/crates/assistant/src/assistant_panel.rs @@ -1209,6 +1209,17 @@ impl Panel for AssistantPanel { fn set_active(&mut self, active: bool, cx: &mut ViewContext) { if active { + if self.pane.read(cx).items_len() == 0 { + if LanguageModelRegistry::read_global(cx) + .active_provider() + .is_none() + { + self.show_configuration_for_provider(None, cx); + } else { + self.new_context(cx); + }; + } + self.ensure_authenticated(cx); } } @@ -3207,14 +3218,14 @@ impl Render for ConfigurationView { Headline::new("Get Started with the Assistant").size(HeadlineSize::Medium), ) .child( - Label::new("Choose a provider to get started with the assistant.") + Label::new("Configure a provider to get started with the assistant. Then create a new context.") .color(Color::Muted), ), ) .child( v_flex() .gap_2() - .child(Headline::new("Choosing a Provider").size(HeadlineSize::Small)) + .child(Headline::new("Configure providers").size(HeadlineSize::Small)) .child(tabs) .children(self.render_active_tab_view(cx)), )