Hi everyone,
* Stéphane Chatty [off-list ref] [2010-08-16 17:17:52]:
Le 16 août 10 à 15:58, Jiri Kosina a écrit :
quoted
thanks for the analysis. How do devices in their report descriptor
describe the fact whether the events should be interleaved by sync
or not?
As far as I know, they don't. I know of two multitouch devices that
send groups of fingers over several HID messages:
- the 3M 22" panel, when there are more than 6 fingers on the
panel. You know there are more messages coming when the number of
fingers (reported through ContactCount in the first message) is
greater than 6.
- the eGalax 72xx series, that adds a second message whenever there
are two fingers; I am not sure yet how one knows when to wait for a
second message. Mathieu might be able to tell us.
Well, i've actually the problem, i can't known :)
So for my case, i dispatch event - 1, not current event, and doing the
merge on userland size by checking old event contact id. Since i known
that the screen is doing only one or two touches, it's kind of easy to
do the "sync" ourself... except when touch UP. With event - 1, i can't
known if it's finished or not...
It cannot be resolved until the kernel send correct sync message...
The short term solution could be to add a .sync hook similar to
.event. Each specific driver could override the call to input_sync()
based on its knowledge of the device.
That would solve this case :)
Mathieu