Skip to content

fix(web): the diff Files panel is now resizable by dragging - #2

Open
Kamkmgamer wants to merge 145 commits into
mainfrom
fix/diff-files-panel-resize
Open

Kamkmgamer wants to merge 145 commits into
mainfrom
fix/diff-files-panel-resize

Conversation

@Kamkmgamer

Copy link
Copy Markdown
Owner

For pingdotgg#24017 (review copy on my fork before upstreaming).

Problem: the Files aside in the diff view was a fixed w-[min(16rem,40%)] (shrink-0, no resize handle), so file names in nested-folder repos were truncated to the point of being indistinguishable. The same fixed aside existed in two surfaces: the Changes/checkpoint diff (DiffPanel.tsx) and the PR code tab (PullRequestCodeTab.tsx).

Fix: both asides now size from a new useDiffFileTreePanelSize hook that wraps the repo's existing useResizableWidth + RightPanelResizeHandle pattern (the same one the preview panel uses):

  • drag the hairline on the panel's left edge to resize; the width persists in localStorage (t3code:diff-file-tree-width) and is shared by both surfaces
  • default 288px, 192px floor, capped at the measured row width minus a 360px floor so the diff column beside it always stays readable
  • the row is tracked as state (callback ref) because it only mounts when a patch renders, so the cap re-measures when it appears, not just on first mount

The hover tooltip for truncated names from the issue is out of scope for this pass: rows live in @pierre/trees' shadow DOM and there is no per-row title API. Widening the panel covers the readability ask.

Verification: vp run check:changed is green (format, lint, knip, typecheck, and the existing PullRequestCodeTab browser test). Per repo rules this layout fix takes before/after captures rather than a UI test — captures to be added before sending upstream.

GLM-5.3 with the ZCode harness

shivamhwp and others added 14 commits October 24, 2026 17:40
…rd is closed (pingdotgg#24363)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…with the sidebar collapsed (pingdotgg#23839)

Co-authored-by: PR Batch Tester <agent@local.test>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…gdotgg#23676)

Co-authored-by: PR Batch Tester <agent@local.test>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…to the delegator (pingdotgg#23795)

Co-authored-by: PR Batch Tester <agent@local.test>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…24405)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…iet (pingdotgg#24334)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
… error after the SDK's late resume (pingdotgg#24231)

Co-authored-by: PR Batch Tester <agent@local.test>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ntermediates (pingdotgg#24542)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M labels Oct 24, 2026
juliusmarminge and others added 14 commits October 24, 2026 15:23
)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
…f Shiki (pingdotgg#24544)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
pingdotgg#24589)

Co-authored-by: luke2x <97411838+luke2x@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…vers (pingdotgg#24601)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ver LAN (pingdotgg#24588)

Co-authored-by: LukeCommits <dyd.lukas.real@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
juliusmarminge and others added 15 commits October 25, 2026 13:33
… machines (pingdotgg#24965)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…5001)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ingdotgg#23966)

Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
… channel (pingdotgg#24340)

Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
…tgg#24964)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
pingdotgg#23973)

Signed-off-by: Yordis Prieto <yordisstudio@Yordiss-Mac-Studio.local>
Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
Co-authored-by: Yordis Prieto <yordisstudio@Yordiss-Mac-Studio.local>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…es (pingdotgg#22907)

Co-authored-by: Victor Vogel <satsdev@only21mil.xyz>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added size:L and removed size:M labels Oct 25, 2026
juliusmarminge and others added 2 commits October 25, 2026 14:49
`vp run mobile:e2e [--device <id>] [--concurrency <n>]` boots dedicated
simulators, installs the cached dev client, starts a fixture server and
Metro, pairs automatically, then runs home -> open thread -> back. Each
step records video and checks the settled chrome (tab bar, back button,
composer) from accessibility snapshots, and compares video frames to the
settled screenshots to catch chrome that lags a transition, such as the
workspace tabs drawn over an entering thread (pingdotgg#24666). Results land in
artifacts/mobile-e2e/<run>/index.html with screenshots, videos, frame
sheets and the first offending frame.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
5f1f604 was committed from a tree based on an older main, so it reverted
upstream changes outside the e2e runner (including pingdotgg#23973, pingdotgg#22907, pingdotgg#22849).
This restores every file to e3592ef and keeps only the runner's own
changes (scripts/mobile-e2e.ts, scripts/mobile-showcase.ts, package and
lockfile entries, .gitignore).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Kamkmgamer
Kamkmgamer force-pushed the fix/diff-files-panel-resize branch from dcce6cf to 5ba1efe Compare October 25, 2026 22:03
@github-actions github-actions Bot added size:XXL and removed size:L labels Oct 25, 2026
The Files aside in the Changes diff and the PR code tab was fixed at
min(16rem, 40%) with no resize handle, so nested-path file names stayed
truncated and indistinguishable. Size it with the existing
useResizableWidth + RightPanelResizeHandle pattern instead: persisted
width, 192px floor, and a row-measured cap that keeps 360px for the
diff column beside it.
@Kamkmgamer
Kamkmgamer force-pushed the fix/diff-files-panel-resize branch from 5ba1efe to 9829cd4 Compare October 25, 2026 22:18

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.