From 9a485724f69964bbb089cf0d13fc656d84e06930 Mon Sep 17 00:00:00 2001 From: Yif <877193178@qq.com> Date: Mon, 21 Sep 2026 14:15:11 +0800 Subject: [PATCH] fix(open-in-app): scale the empty-state opener chevron up and trim its height to 36px --- .../ui-open-in-app/src/client/OpenTargetButton.module.css | 6 +++--- .../client/ui-open-in-app/src/client/OpenTargetButton.tsx | 2 +- .../ui-open-in-app/tests/open-path-action.client.spec.tsx | 2 ++ 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/client/ui-open-in-app/src/client/OpenTargetButton.module.css b/packages/client/ui-open-in-app/src/client/OpenTargetButton.module.css index 44a66f59f2..5db0cc5cdd 100644 --- a/packages/client/ui-open-in-app/src/client/OpenTargetButton.module.css +++ b/packages/client/ui-open-in-app/src/client/OpenTargetButton.module.css @@ -62,19 +62,19 @@ /* The unavailable preview emphasizes the same actions with a labeled button. */ .split[data-size='large'] { - height: 40px; + height: 36px; border-radius: 14px; border-color: var(--dsw-alias-border-l2); } .split[data-size='large'] .main { gap: 6px; - padding: 8px 14px; + padding: 6px 14px; font-size: 14px; } .split[data-size='large'] .chevron { - padding: 8px 10px; + padding: 6px 10px; } .skeleton { display: inline-block; flex: none; border-radius: 3px; background: var(--dsw-alias-interactive-bg-hover); } diff --git a/packages/client/ui-open-in-app/src/client/OpenTargetButton.tsx b/packages/client/ui-open-in-app/src/client/OpenTargetButton.tsx index 93a3a34657..9546c13153 100644 --- a/packages/client/ui-open-in-app/src/client/OpenTargetButton.tsx +++ b/packages/client/ui-open-in-app/src/client/OpenTargetButton.tsx @@ -133,7 +133,7 @@ export function OpenTargetButton(props: OpenTargetButtonProps): ReactNode { setMenuOpen(value => !value) }} > - + } )} diff --git a/packages/client/ui-open-in-app/tests/open-path-action.client.spec.tsx b/packages/client/ui-open-in-app/tests/open-path-action.client.spec.tsx index 0a4a13f090..aa39dda172 100644 --- a/packages/client/ui-open-in-app/tests/open-path-action.client.spec.tsx +++ b/packages/client/ui-open-in-app/tests/open-path-action.client.spec.tsx @@ -256,6 +256,8 @@ it('uses the same application menu in the prominent empty-state control', async const view = render() await act(async () => {}) expect(view.container.querySelector('[data-open-target]')?.getAttribute('data-size')).toBe('large') + // The large control scales the menu chevron up from the compact 10px glyph. + expect(screen.getByRole('button', { name: zh['path.more'] }).querySelector('svg')?.getAttribute('width')).toBe('14') await act(async () => { fireEvent.click(screen.getByRole('button', { name: zh['path.more'] })) }) expect(screen.getAllByRole('menuitem').map(item => item.textContent)).toEqual(['Music(默认)', zh['path.reveal']]) await act(async () => { fireEvent.click(screen.getByRole('menuitem', { name: 'Music(默认)' })) })