<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - Mouse wheel tilt scroll events are reported as wheel scroll events"
href="https://bugs.freedesktop.org/show_bug.cgi?id=98881">98881</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Mouse wheel tilt scroll events are reported as wheel scroll events
</td>
</tr>
<tr>
<th>Product</th>
<td>Wayland
</td>
</tr>
<tr>
<th>Version</th>
<td>unspecified
</td>
</tr>
<tr>
<th>Hardware</th>
<td>All
</td>
</tr>
<tr>
<th>OS</th>
<td>All
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>minor
</td>
</tr>
<tr>
<th>Priority</th>
<td>medium
</td>
</tr>
<tr>
<th>Component</th>
<td>libinput
</td>
</tr>
<tr>
<th>Assignee</th>
<td>wayland-bugs@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>benwolsieffer@gmail.com
</td>
</tr></table>
<p>
<div>
<pre>As discussed in <a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED - RFE: extra option to define the vdist/hdist for scrolling event"
href="show_bug.cgi?id=92772">bug #92772</a>, libinput reports horizontal scroll events that are
caused by tilting a vertical scroll wheel as normal wheel events. This causes
them to be affected by the MOUSE_WHEEL_CLICK_[ANGLE|COUNT][_HORIZONTAL] udev
properties, which doesn't make sense because "click angle" doesn't make sense
for a tilt event.
The solution seems to be to create a new pointer axis source, possibly
LIBINPUT_POINTER_AXIS_SOURCE_WHEEL_TILT. The issue then becomes identifying
which devices have tilting vertical wheels and which ones have real horizontal
scroll wheels.
The Linux kernel reports wheel tilts as REL_HWHEEL events, which is the same
type of event reported for real horizontal scroll wheels. This means that
another method must be used to distinguish between the event types.
A possible solution is to use the existence of the
MOUSE_WHEEL_CLICK_[ANGLE|COUNT]_HORIZONTAL udev properties to determine whether
a mouse has a real horizontal scroll wheel. Most mice do not have horizontal
scroll wheels, so if those properties are missing, libinput could assume than
any horizontal scroll events were caused by tilting the vertical wheel. If
either property existed, libinput could report that the mouse had a horizontal
scroll wheel.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>