From ae492e7aa2070dd4dc0c84795d760de1e0c0b1ab Mon Sep 17 00:00:00 2001 From: Kayshen-X Date: Tue, 2 Jun 2026 09:42:02 +0800 Subject: [PATCH] fix(editor): add backdrop box behind active agent-chip provider icon The TS top-bar shows the active provider glyph inside a rounded bg-muted box; the Rust chip painted the bare icon, so a spinning/active provider read as a floating glyph with no chip affordance. Paint a theme.muted rounded backdrop (pad 4, radius 5) behind the brand icon(s) to match. --- crates/op-editor-ui/src/widgets/top_bar_paint.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/crates/op-editor-ui/src/widgets/top_bar_paint.rs b/crates/op-editor-ui/src/widgets/top_bar_paint.rs index 75da771ae..48bee0688 100644 --- a/crates/op-editor-ui/src/widgets/top_bar_paint.rs +++ b/crates/op-editor-ui/src/widgets/top_bar_paint.rs @@ -266,6 +266,17 @@ impl TopBar { 1.4, ); } else { + // Light rounded backdrop behind the brand icon(s) — the TS active + // chip shows the provider glyph in a `bg-muted` rounded box. + let pad = 4.0; + cx.backend.fill_round_rect( + Rect { + origin: Point2D::new(chip_rect.origin.x + 8.0 - pad, icons_y - pad), + size: Point2D::new(icons_w + pad * 2.0, ICON_SIZE + pad * 2.0), + }, + 5.0, + self.theme.muted, + ); let mut ix = chip_rect.origin.x + 8.0; for (i, provider) in op_editor_core::AgentProvider::ALL.iter().enumerate() { if !self.connected[i] {