agent: Fix agent panel model selector layout pushing send button off screen (#32251)
| Before | After | |--------|-------| | <video src="https://github.com/user-attachments/assets/db4dcc91-9a32-4621-be78-87fe9d80b801" controls width="400"></video> | <video src="https://github.com/user-attachments/assets/8ee31d6d-5150-4239-a4af-eeca112d56d5" controls width="400"></video> | While working on something else I found this weird behaviour in message editor of agent panel. When model names are too long, the model selector would expand and push the send button outside the visible area. This change fixes the flex layout to ensure the send button always remains accessible while properly truncating long model names. Closes #ISSUE Release Notes: - Fix agent panel model selector layout pushing send button off screen --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com> Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
This commit is contained in:
co-authored by
Danilo Leal
Danilo Leal
parent
415d482395
commit
286b97c0de
@@ -91,12 +91,13 @@ impl AgentModelSelector {
|
||||
|
||||
impl Render for AgentModelSelector {
|
||||
fn render(&mut self, window: &mut Window, cx: &mut Context<Self>) -> impl IntoElement {
|
||||
let focus_handle = self.focus_handle.clone();
|
||||
|
||||
let model = self.selector.read(cx).delegate.active_model(cx);
|
||||
let model_name = model
|
||||
.map(|model| model.model.name().0)
|
||||
.unwrap_or_else(|| SharedString::from("No model selected"));
|
||||
|
||||
let focus_handle = self.focus_handle.clone();
|
||||
|
||||
PickerPopoverMenu::new(
|
||||
self.selector.clone(),
|
||||
Button::new("active-model", model_name)
|
||||
|
||||
@@ -722,6 +722,7 @@ impl MessageEditor {
|
||||
.child(
|
||||
h_flex()
|
||||
.flex_none()
|
||||
.flex_wrap()
|
||||
.justify_between()
|
||||
.child(
|
||||
h_flex()
|
||||
@@ -731,6 +732,7 @@ impl MessageEditor {
|
||||
.child(
|
||||
h_flex()
|
||||
.gap_1()
|
||||
.flex_wrap()
|
||||
.when(!incompatible_tools.is_empty(), |this| {
|
||||
this.child(
|
||||
IconButton::new(
|
||||
|
||||
Reference in New Issue
Block a user