agent_ui: Improve wrapping behavior in provider configuration header (#34989)

This ensures that the "Add provider" button does not move offscreen too
fast and ensures the text wraps for smaller panel sizes.

| Before | After |
| --- | --- |
| <img width="413" height="84" alt="image"
src="https://github.com/user-attachments/assets/565f7503-bddb-4b05-83c1-8f8745ac3ce3"
/> | <img width="392" height="84" alt="image"
src="https://github.com/user-attachments/assets/18469e4d-d94c-4641-9081-1af8981bfffd"
/> |

Release Notes:

- N/A
This commit is contained in:
Finn Evers 2025-07-24 10:40:36 +02:00 committed by GitHub
parent 65759d4316
commit cd9bcc7f09
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -321,13 +321,14 @@ impl AgentConfiguration {
.justify_between() .justify_between()
.child( .child(
v_flex() v_flex()
.w_full()
.gap_0p5() .gap_0p5()
.child(Headline::new("LLM Providers"))
.child( .child(
Label::new("Add at least one provider to use AI-powered features.") h_flex()
.color(Color::Muted), .w_full()
), .gap_2()
) .justify_between()
.child(Headline::new("LLM Providers"))
.child( .child(
PopoverMenu::new("add-provider-popover") PopoverMenu::new("add-provider-popover")
.trigger( .trigger(
@ -342,9 +343,16 @@ impl AgentConfiguration {
.menu({ .menu({
let workspace = self.workspace.clone(); let workspace = self.workspace.clone();
move |window, cx| { move |window, cx| {
Some(ContextMenu::build(window, cx, |menu, _window, _cx| { Some(ContextMenu::build(
menu.header("Compatible APIs").entry("OpenAI", None, { window,
let workspace = workspace.clone(); cx,
|menu, _window, _cx| {
menu.header("Compatible APIs").entry(
"OpenAI",
None,
{
let workspace =
workspace.clone();
move |window, cx| { move |window, cx| {
workspace workspace
.update(cx, |workspace, cx| { .update(cx, |workspace, cx| {
@ -357,12 +365,20 @@ impl AgentConfiguration {
}) })
.log_err(); .log_err();
} }
}) },
})) )
},
))
} }
}), }),
), ),
) )
.child(
Label::new("Add at least one provider to use AI-powered features.")
.color(Color::Muted),
),
),
)
.child( .child(
div() div()
.w_full() .w_full()