<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_ASSIGNED "
title="ASSIGNED - Handle wacom tablet delayed serial events"
href="https://bugs.freedesktop.org/show_bug.cgi?id=97526">97526</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Handle wacom tablet delayed serial events
</td>
</tr>
<tr>
<th>Product</th>
<td>Wayland
</td>
</tr>
<tr>
<th>Version</th>
<td>unspecified
</td>
</tr>
<tr>
<th>Hardware</th>
<td>Other
</td>
</tr>
<tr>
<th>OS</th>
<td>All
</td>
</tr>
<tr>
<th>Status</th>
<td>ASSIGNED
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</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>peter.hutterer@who-t.net
</td>
</tr>
<tr>
<th>CC</th>
<td>killertofu@gmail.com
</td>
</tr></table>
<p>
<div>
<pre>Created <span class=""><a href="attachment.cgi?id=126092" name="attach_126092" title="evemu log for a delayed serial">attachment 126092</a> <a href="attachment.cgi?id=126092&action=edit" title="evemu log for a delayed serial">[details]</a></span>
evemu log for a delayed serial
Some sensors take a few events until they can read the serial number from the
pen. This means that the serial is initially 0, then updates to the real serial
number later.
See also:
<a href="https://lists.freedesktop.org/archives/wayland-devel/2016-August/030751.html">https://lists.freedesktop.org/archives/wayland-devel/2016-August/030751.html</a>
There are a couple of options to deal with this, based on the assumption that
once we announce a tool in libinput, we cannot afterwards change its serial
number.
1) delay initialization of a tool until the serial comes. this would result in
the device not reacting until potentially well into the interaction
2) disable serial reporting on affected tablets. this requires a hwdb
3) ignore late serials. we get a serial of 0 and that's a good hint that we
just don't know yet. we can then ignore whatever serial comes next
4) a combination of 1 with memory - delay the initial sequence and remember the
last-seen tool. Re-use that for the next unknown sequence and where incorrect
fake a prox out + prox in for the new tool
Option 1) is complicated for making sure button events are correct. 2) requires
updating of the hwdb. 3) is simple, 4) is probably the best user experience and
should be implemented once 3) proves insufficient (e.g. use of multiple tools
on such tablet)</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>