From e1947232d2cff20493b99626b382c626fe5d3822 Mon Sep 17 00:00:00 2001 From: Pervakov Grigorii Date: Wed, 11 Nov 2026 18:05:14 +0100 Subject: [PATCH 1/2] Sidebar: line up every session row in one column A row with children puts its expand chevron in front of its icon and a row without children had nothing there, so at the same depth a parent's icon and title sat 19px right of its siblings', and a child's title started left of its parent's. - Every session row without children reserves the chevron's box (ExpandSlot): tree rows, search results, archived, System, the new-chat row and the rename row. Icons and titles share one column and each level indents 16px, as file rows do in Files/FileTree.tsx. Co-Authored-By: Claude Opus 5.5 --- web/src/components/Chat/SessionSidebar.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/web/src/components/Chat/SessionSidebar.tsx b/web/src/components/Chat/SessionSidebar.tsx index 5725089da..cc4530bce 100644 --- a/web/src/components/Chat/SessionSidebar.tsx +++ b/web/src/components/Chat/SessionSidebar.tsx @@ -647,6 +647,7 @@ export function SessionSidebar({ sessions, activeSession, agentStatus, onCreate, : 'text-text-muted hover:bg-surface-raised hover:text-text-secondary' }`} > +
New chat
@@ -795,6 +796,7 @@ export function SessionSidebar({ sessions, activeSession, agentStatus, onCreate, : 'text-text-faint hover:bg-surface-raised hover:text-text-muted' }`} > +
{cleanTitle(s)}
@@ -930,6 +932,11 @@ function GroupHeader({ label, count, collapsed, tone, onToggle }: { } +/** Empty box the size of the expand chevron, so every row's icon and title sit in the same column. */ +function ExpandSlot() { + return