Issue Tracker

< Back to issue list...

Summary: Fix scrolling behavior for main canvas to support enhanced wheels and trackpads

Issue# Type Category Severity Status
160 Feature Request Core
Fix In Progress


Currently the canvas scrolling relies on Windows Forms scrollbars and their limited support for mouse wheels and some laptop trackpads. Several "hacks" are in place to allow for things like horizontal scrolling when pressing Ctrl to mimic Photoshop's scrolling behavior.

The proposed enhancement is to read raw scrolling messages sent by wheel mice and laptop trackpads, including horizontal scrolling messages, then translate these accordingly into canvas movements. Also make use of the wheel delta to allow for smaller movements on smooth wheels such as those found on Logitech mice.

Steps to Reproduce

(none specified)


Partially working as of 3.1.0 and a few more bugs worked out in 3.1.1.

Biggest challenge at this point is working around overzealous drivers (like Logitech) which refuse to send the correct WM_MOUSEWHEEL and WM_MOUSEHWHEEL messages. If they see scrollbars, they actually grab the scrollbar and don't forward the wheel message at all.

Additionally, Logitech's "smooth scrolling" driver (both old and new versions) sends 120 deltas every time to all .NET apps for some reason. Doesn't seem to be much documentation about this. I can't do anything about this but I know it's possible in theory since Chrome and MS Office (among others) successfully receive the partial delta scroll messages.

Timing Information

Entered Closed Age
1/24/2014 01:22 PM CST 1913 days

Additional Information

Reported Version Operating System Architecture Fixed Version