-
Notifications
You must be signed in to change notification settings - Fork 8.8k
Description
Windows Terminal version
1.24.2682.0
Windows build number
10.0.26220.0
Other Software
No response
Steps to reproduce
🐛 Bug Report: Touchpad Scrolling Malfunction after Commit b53d7df
Windows Terminal Version
1.24.2682.0 (Preview)
Windows Build Number
10.0.26220.0
Commit Introduced
b53d7df Add support for VT horizontal mouse wheel events
Problem Description
After upgrading to Windows Terminal Preview v1.24.2682.0, touchpad scrolling inside the terminal became unreliable:
Vertical scrolling with two fingers on a touchpad often does not work.
In some cases, scrolling works but behaves erratically (jumping, inconsistent speed, or misinterpreted as horizontal scroll).
This issue was not present in v1.23 Stable.
Steps to Reproduce
Install Windows Terminal Preview v1.24.2682.0 on Windows build 10.0.26220.0.
Open any terminal session (PowerShell, WSL, or CMD).
Use a laptop touchpad to scroll vertically with two fingers.
Observe that scrolling is either non-functional or inconsistent.
Expected Behavior
Smooth and consistent vertical scrolling using the touchpad, identical to behavior in v1.23.
Horizontal scrolling should only trigger when explicitly performed by the user (e.g., two-finger horizontal gesture).
Impact
Breaks usability for all laptop users relying on touchpad scrolling.
Affects common workflows in editors like Vim, tmux, and less.
Regression compared to v1.23 Stable.
Workaround
Downgrade to Windows Terminal v1.23 Stable until a fix is released.
Actual Behavior
Vertical scrolling is frequently ignored or misinterpreted.
Some vertical gestures are incorrectly processed as WM_MOUSEHWHEEL events.
Applications inside the terminal (e.g., Vim, tmux) receive incorrect input, breaking usability.
Technical Analysis
Commit b53d7df introduced support for horizontal mouse wheel events by modifying the MouseWheel handler to interpret delta.X when delta.Y == 0.
Touchpads often emit gesture-based deltas that include small delta.X values even during vertical scrolling.
As a result, the terminal incorrectly treats vertical gestures as horizontal scroll events (WM_MOUSEHWHEEL).
Expected Behavior
No response
Actual Behavior
Enabled Scrolling (Mouse, Touchpad)