From 439adf3967410a2e6d652c4071624727e3e3fdf5 Mon Sep 17 00:00:00 2001 From: Menghuan1918 Date: Sat, 8 Aug 2026 17:30:45 +0800 Subject: [PATCH] ui: align the sidebar with the app's own chrome (rows, buttons, motion) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Explorer rows become the app's tree-row cell — 34px, radius 8, inset by the scroll padding, 22px indent step, and the session-row mount fade — and git rows get the same cell plus the proper selected fill (interactive-bg-active). Icon buttons switch to the app's 28px circle pattern (ui-workspace), headers settle at the 36px section rhythm, and keyboard focus gets a visible ring everywhere per the styling policy, with a prefers-reduced-motion block turning off the slides and fades. --- src/client/ExplorerView.tsx | 10 ++--- src/client/sidebar.module.css | 81 +++++++++++++++++++++++++++++------ 2 files changed, 74 insertions(+), 17 deletions(-) diff --git a/src/client/ExplorerView.tsx b/src/client/ExplorerView.tsx index 403cf12..84a47ba 100644 --- a/src/client/ExplorerView.tsx +++ b/src/client/ExplorerView.tsx @@ -66,11 +66,11 @@ export function ExplorerView(props: { const renderLevel = (dir: string, depth: number): ReactNode => { const level = data[dir] if (level === undefined) { - return
{t('loading')}
+ return
{t('loading')}
} if (level.error !== undefined) { return ( -
+
{level.error}
) @@ -84,7 +84,7 @@ export function ExplorerView(props: {