Repository navigation
Sidebar: line up every session row in one column - #682
GrigoryPervakov wants to merge 2 commits into
Conversation
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 <noreply@anthropic.com>
|
Nerve PR review · ✅ Ready to merge This fixes a real misalignment in the sidebar: only rows with children had a chevron, so parent titles sat 19px right of their siblings' and children's titles sat left of their parent's. Completeness: a layout-only change in one file; no test expected (jsdom does not measure layout). It merges cleanly, and no other open PR touches the file. Worth considering:
Checked: web sandbox at |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Why
A sidebar row with children puts its expand chevron in front of its icon; a row without children has nothing there. At the same depth a parent's icon and title start 19px to the right of its siblings', and a child's title starts 3px left of its parent's, so the nesting shows only in the chevrons. It is most visible under chats that hold forks, next to plain chats at the top level.
What
ExpandSlot: an empty box the size of the chevron button. Every session row without children reserves it: tree rows, search results, archived, System, the new-chat row and the rename row.Files/FileTree.tsx, where file rows pad by the chevron's width.Made-up chats.
Notes
Testing
npm run build,npm test(1911 passed). No new test: the change is layout only.🤖 Generated with Claude Code