Skip to content

Conversation

@YaLTeR
Copy link
Contributor

@YaLTeR YaLTeR commented Jan 5, 2026

Before this change, vertical scroll was always discrete. At least on Wayland, this caused extremely fast scrolling on touchpads (that send lots of small axis events) and on mice with high-resolution wheels (that also send lots of small axis events). After this change, all of this scrolling works correctly, at a speed matching regular wheels.

I adjusted the Wayland PointerAxis multiplier in such a way as to preserve the scrolling speed for regular mice. I don't know about other backends, they may need to be adjusted too.

Before:

tracy-scroll-before.mp4

After:

tracy-scroll-after.mp4

YaLTeR added 2 commits January 5, 2026 19:44
Regular mice send a value of 15 for one wheel tick, not 8.

This currently doesn't change anything about vertical scrolling since
it's handled discretely, but that will change in the next commit.
Before this commit, vertical scroll was always discrete. At least on
Wayland, this caused extremely fast scrolling on touchpads (that send
lots of small axis events) and on mice with high-resolution wheels (that
also send lots of small axis events). After this commit, all of this
scrolling works correctly, at a speed matching regular wheels.
@YaLTeR
Copy link
Contributor Author

YaLTeR commented Jan 6, 2026

There's still a problem with the frame overview zoom, but there it can't be as easily fixed because the zoom levels are discrete. Would need some accumulator for io.MouseWheel that only zooms once an integer value is accumulated.

@wolfpld wolfpld merged commit 1413bb4 into wolfpld:master Jan 7, 2026
5 of 6 checks passed
@wolfpld
Copy link
Owner

wolfpld commented Jan 7, 2026

I don't know about other backends, they may need to be adjusted too.

Well, you broke emscripten :P

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants