From 775ff6d01c1d55af12ac3d083f9584f2bad954af Mon Sep 17 00:00:00 2001 From: su-fen <715041@qq.com> Date: Mon, 31 Aug 2026 03:13:02 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix(chat):=20=E5=8A=A0=E5=8F=B7=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E8=A1=A5=E4=B8=8A=E4=B8=8E=E5=AE=89=E5=85=A8/?= =?UTF-8?q?=E5=88=86=E6=94=AF=E8=8F=9C=E5=8D=95=E4=B8=80=E8=87=B4=E7=9A=84?= =?UTF-8?q?=E5=BC=80=E5=90=88=E5=8A=A8=E7=94=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes #681 Co-authored-by: Cursor --- crates/agent-gateway/web/src/index.css | 31 ++++++++++++++++++++++++++ crates/agent-gui/src/index.css | 9 ++++++-- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/crates/agent-gateway/web/src/index.css b/crates/agent-gateway/web/src/index.css index 71ef56fdf..eb8d0e918 100644 --- a/crates/agent-gateway/web/src/index.css +++ b/crates/agent-gateway/web/src/index.css @@ -88,12 +88,41 @@ inset 0 0 0 1px rgba(167, 139, 250, 0.12); } + .composer-add-dropdown, + .composer-branch-dropdown, + .composer-safety-dropdown { + transform-origin: var(--transform-origin, bottom left); + transition: + opacity 0.18s cubic-bezier(0.16, 1, 0.3, 1), + transform 0.18s cubic-bezier(0.16, 1, 0.3, 1); + } + + .composer-add-dropdown[data-starting-style], + .composer-add-dropdown[data-ending-style], + .composer-branch-dropdown[data-starting-style], + .composer-branch-dropdown[data-ending-style], + .composer-safety-dropdown[data-starting-style], + .composer-safety-dropdown[data-ending-style] { + opacity: 0; + transform: translateY(6px) scale(0.97); + } + + .composer-add-dropdown[data-ending-style], + .composer-branch-dropdown[data-ending-style], + .composer-safety-dropdown[data-ending-style] { + transition-duration: 0.12s; + transition-timing-function: cubic-bezier(0.4, 0, 1, 1); + transform: translateY(5px) scale(0.975); + } + + .composer-add-dropdown[data-state="open"], .composer-branch-dropdown[data-state="open"], .composer-safety-dropdown[data-state="open"] { animation: composerReasoningDropdownIn 0.18s cubic-bezier(0.16, 1, 0.3, 1); transform-origin: var(--transform-origin, bottom left); } + .composer-add-dropdown[data-state="closed"], .composer-branch-dropdown[data-state="closed"], .composer-safety-dropdown[data-state="closed"] { animation: composerReasoningDropdownOut 0.12s cubic-bezier(0.4, 0, 1, 1) forwards; @@ -101,10 +130,12 @@ } @media (prefers-reduced-motion: reduce) { + .composer-add-dropdown, .composer-branch-dropdown, .composer-safety-dropdown { /* biome-ignore lint/complexity/noImportantStyles: Reduced-motion overrides dropdown open/close animations. */ animation: none !important; + transition: none !important; } .composer-reasoning-trigger, diff --git a/crates/agent-gui/src/index.css b/crates/agent-gui/src/index.css index e01eaf3bd..c8c4c643f 100644 --- a/crates/agent-gui/src/index.css +++ b/crates/agent-gui/src/index.css @@ -180,8 +180,8 @@ scale(0.98); } - /* Composer reasoning select / branch selector animations. - * Base UI drives both popups, so open styling keys off data-popup-open on + /* Composer reasoning select / add menu / branch selector animations. + * Base UI drives these popups, so open styling keys off data-popup-open on * the trigger and enter/exit key off data-starting-style / data-ending-style * on the popup (data-state rules never match Base UI). */ .composer-reasoning-trigger[data-popup-open] { @@ -190,6 +190,7 @@ inset 0 0 0 1px rgba(167, 139, 250, 0.12); } + .composer-add-dropdown, .composer-branch-dropdown, .composer-safety-dropdown { transform-origin: var(--transform-origin); @@ -198,6 +199,8 @@ transform 0.18s cubic-bezier(0.16, 1, 0.3, 1); } + .composer-add-dropdown[data-starting-style], + .composer-add-dropdown[data-ending-style], .composer-branch-dropdown[data-starting-style], .composer-branch-dropdown[data-ending-style], .composer-safety-dropdown[data-starting-style], @@ -206,6 +209,7 @@ transform: translateY(6px) scale(0.97); } + .composer-add-dropdown[data-ending-style], .composer-branch-dropdown[data-ending-style], .composer-safety-dropdown[data-ending-style] { transition-duration: 0.12s; @@ -216,6 +220,7 @@ @media (prefers-reduced-motion: reduce) { .composer-reasoning-trigger, .composer-reasoning-trigger svg:last-child, + .composer-add-dropdown, .composer-branch-dropdown, .composer-safety-dropdown { /* biome-ignore lint/complexity/noImportantStyles: Reduced-motion must override component open/close transition states. */ From a6aa4c135b2810267165e345c6b2f74c2c0380a9 Mon Sep 17 00:00:00 2001 From: su-fen <715041@qq.com> Date: Mon, 31 Aug 2026 03:14:49 +0800 Subject: [PATCH 2/2] chore: add composer add-menu preview frames for PR review Co-authored-by: Cursor --- .github/pr-assets/composer-add-menu-closed.png | Bin 0 -> 18768 bytes .github/pr-assets/composer-add-menu-open.png | Bin 0 -> 27114 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 .github/pr-assets/composer-add-menu-closed.png create mode 100644 .github/pr-assets/composer-add-menu-open.png diff --git a/.github/pr-assets/composer-add-menu-closed.png b/.github/pr-assets/composer-add-menu-closed.png new file mode 100644 index 0000000000000000000000000000000000000000..afff5910f9a4b6578babc0c11ae991be2fe6a2b3 GIT binary patch literal 18768 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 literal 0 HcmV?d00001 diff --git a/.github/pr-assets/composer-add-menu-open.png b/.github/pr-assets/composer-add-menu-open.png new file mode 100644 index 0000000000000000000000000000000000000000..8feb909b1de6941efd9bf5b8977ed5459018f82d GIT binary patch literal 27114 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 X&c3IWhU4aQ;fhH_564^fXRrJV^cbN~ literal 0 HcmV?d00001