Agent chat: the wheel over Jump to latest and the composer scrolls the transcript

Merged
TE
16d ago
+293-0

Leo (2026-10-19, nightly): with the pointer over the Jump to latest button or the composer area, the transcript does not scroll.

wheelPassThrough.ts: a wheel listener on the chat's main column forwards vertical scrolls over Jump to latest and the bottom stack to the transcript scroller, counted as the reader's scroll. Parts that scroll themselves (a long prompt, the queue, a menu list) keep the wheel while they can still move; pinch-zoom and horizontal scrolls are untouched.

Overlap: #22272 (the transcript runs under the composer) touches the same layout; this change only adds a listener, and I'll rebase whichever lands second.
Tests (committed first): test/agent-pane-wheel-pass-through.test.ts, real wheel events in Chromium and WebKit.
Risk tier: low (one listener, removed on unmount).

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.


Summary by cubic

Fixes the agent chat so the wheel over the Jump to latest button or the composer area scrolls the transcript, matching the Claude and Codex apps.

  • Adds a passive wheel listener on the chat's main column that forwards vertical scrolls over Jump to latest and the bottom stack to the transcript scroller, counting them as the reader's scroll; the transcript first receives a copy of the wheel so its own listeners (glide, Jump to latest) run as usual.
  • Parts that scroll themselves (a long prompt, the queue, a menu list) keep the wheel while they can still move that way; pinch-zoom and horizontal scrolls are untouched.
  • Adds browser tests with real wheel events in Chromium and WebKit.