diff --git a/styles.css b/styles.css index 78b306fe..76a0c2ba 100644 --- a/styles.css +++ b/styles.css @@ -373,7 +373,7 @@ stroke: currentcolor; } -.codex-panel-ui__toolbar-control:focus:not(:hover):not(:focus-visible) { +.codex-panel-ui__toolbar-control:not(.is-active):focus:not(:hover):not(:focus-visible) { background: transparent; box-shadow: none; color: var(--icon-color); diff --git a/tests/styles.test.ts b/tests/styles.test.ts index 8a427488..2107483f 100644 --- a/tests/styles.test.ts +++ b/tests/styles.test.ts @@ -16,6 +16,17 @@ describe("panel CSS token scope", () => { }); }); +describe("chat toolbar CSS", () => { + it("does not let mouse-focus reset override active toolbar controls", () => { + const toolbarMouseFocus = + /\.codex-panel-ui__toolbar-control:not\(\.is-active\):focus:not\(:hover\):not\(:focus-visible\) \{(?[^}]+)\}/.exec(styles) + ?.groups?.["body"] ?? ""; + + expect(toolbarMouseFocus).toContain("background: transparent"); + expect(toolbarMouseFocus).toContain("color: var(--icon-color)"); + }); +}); + describe("threads view CSS", () => { it("keeps long row titles clear of trailing actions", () => { const titleLine = /\.codex-panel-threads__row-title-line \{(?[^}]+)\}/.exec(styles)?.groups?.["body"] ?? "";