picoe / Eto

Cross platform GUI framework for desktop and mobile applications in .NET
Other
3.59k stars 325 forks source link

Request: Horizontal Mouse Wheel support #1392

Open Drachenkaetzchen opened 5 years ago

Drachenkaetzchen commented 5 years ago

Expected Behavior

When using a mouse with horizontal wheel support, horizontal wheel scroll events are emitted.

Actual Behavior

When running the Eto Test application and attempting to use the horizontal mouse wheel in the "Mouse Events" section, no events are emitted. The same goes for horizontal scroll in scroll views.

Additional Information

I noticed this issue since my ThinkPad Trackpoint's Synaptics Driver does not support mouse wheel + middle click at the same time. Middle Click is commonly used to pan a viewport around, but horizontal mouse wheel scrolling is often supported by applications as an alternative.

Steps to Reproduce the Problem

  1. You need a mouse with horizontal scroll support (see below)
  2. Open the Eto Test Application on Windows (tested with Wpf, might affect others)
  3. Navigate to "Mouse Events"
  4. Use the horizontal scroll feature

Tested Mice

Specifications

cwensley commented 4 years ago

Hey @Drachenkaetzchen, thanks for the suggestion!

It is unfortunate there's no "built-in" support for horizontal scrolling on Windows (WPF or WinForms). However, there appears to be a way to hook into the wndproc to make this happen.