[BUG] Trackpad scroll on macOS (VS Code terminal): ~3 lines/notch, no scrollbar, distance scales with gesture velocity; CLAUDE_CODE_SCROLL_SPEED=1 no help
Summary
Over the last few days, trackpad scrolling in the Claude Code TUI became unusable on macOS in the VS Code integrated terminal. Three things changed at once:
- Each scroll notch now moves ~3 lines instead of 1. Fine line-by-line scrolling is gone.
- The vertical scrollbar disappeared from the right edge of the transcript, so there is no positional feedback for how far you've scrolled.
- Scroll distance is now velocity/acceleration dependent. Moving fingers slowly across the trackpad advances only a few lines; moving fast makes the transcript fly by many lines for the same physical travel. The result is unpredictable — you can never tell how far one gesture will scroll, because it depends on how fast you flicked, not how far you dragged.
CLAUDE_CODE_SCROLL_SPEED=1 (the documented minimum) is already set and does not help — it's the floor, and the view is still far too fast and still acceleration-coupled.
Environment
- Claude Code: 2.1.169
- Terminal: VS Code integrated terminal (
TERM_PROGRAM=vscode, version1.123.0),TERM=xterm-256color - macOS: 15.7.7 (24G720)
- TUI mode: default (no
"tui": "fullscreen"set) CLAUDE_CODE_SCROLL_SPEED=1- Input: built-in MacBook trackpad
Steps to reproduce
- Run Claude Code in the VS Code integrated terminal on macOS (default TUI,
CLAUDE_CODE_SCROLL_SPEED=1). - Have a conversation long enough to require scrolling.
- Scroll the transcript with the trackpad — first a slow drag, then a fast flick over the same physical distance.
Expected
- One scroll notch ≈ one line (or a small, fixed number), independent of gesture velocity.
- A visible scrollbar indicating position in the transcript.
CLAUDE_CODE_SCROLL_SPEEDcontrolling sensitivity in a predictable, velocity-independent way.
Actual
- ~3 lines per notch, and the per-gesture distance scales with how fast you move your fingers (momentum/acceleration is being forwarded as additional wheel events and multiplied by the line step).
- No scrollbar.
CLAUDE_CODE_SCROLL_SPEED=1provides no relief (already at floor).
Notes / related issues
This looks related but distinct from existing reports:
- #65323 — "scroll far too fast … even at
CLAUDE_CODE_SCROLL_SPEED=1" — same too-fast class, but reported for Cursor + fullscreen TUI; this report is VS Code + default TUI, and adds the velocity-dependence and missing scrollbar symptoms. - #56546 — fullscreen TUI janky/chunky stepping — different mode and not velocity-coupled.
- #65833 — scroll wheel sends arrow keys + no scrollbar — different terminal (Windows/WSL) and a different failure (arrow keys vs. multi-line jumps).
- #65117 — scrollbar disappears intermittently — but tied to background agents, not trackpad velocity.
The combination here — multi-line-per-notch + missing scrollbar + acceleration-coupled distance in the VS Code integrated terminal on macOS, default TUI — does not appear to be tracked. This is a regression: line-by-line trackpad scrolling worked a few days ago.
Request
Decouple scroll distance from gesture velocity (treat one wheel event as a fixed line step regardless of momentum), restore the scrollbar in default TUI, and allow a sub-1 / predictable CLAUDE_CODE_SCROLL_SPEED so fine scrolling is possible again.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗