Dear Mr. Hutterer.
Thanks you for your reply. And I have another question about this, so I hope you reply about this question.
Following my second case, libinput reports below events. (used evtest and libinput debug-events)
So I looks like 1st finger down -> 1st finger up -> 2nd finger down -> 2nd finger up I interpret it: 2nd finger down can come first than 1st finger, after all fingers are released.
I have thought that first touch down's index is always 0. But following in this case, second or third touch down can come fater than first touch down.
So I ask it to you that second finger down came fisrt situation is normal situation or not.. I'll waiting for your reply. If you reply about this, it helps me a lot.
Thanks and regards, JeongHyun Kang.
--------- Original Message --------- Sender : Peter Hutterer <peter.hutte...@who-t.net> Date : 2020-05-22 12:32 (GMT+9) Title : Re: Question about Linux MT Protocol B type
On Thu, May 21, 2020 at 07:42:33PM +0900, 강정현 wrote: > Dear all, > > I have an one question about Linux MT Protocol B type. > > Asume that press touch screen using first finger. > > And release fisrt finger and press second finger toghether. > > > > In that case, which procotol is correct? > > ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ > │ ABS_MT_SLOT 0 │ > │ │ > │ ABS_MT_TRACKING_ID 1 │ > │ │ > │ ABS_MT_POSITION_X 10 │ > │ │ > │ ABS_MT_POSITION_Y 5 │ > │ │ > │ ABS_MT_SYNC <-- first finger press │ > └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ There's no such thing as ABS_MT_SYNC, use SYN_REPORT here. > first case > > ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ > │ ABS_MT_TRACKING_ID -1 │ > │ │ > │ ABS_MT_TRACKING_ID 2 │ > │ │ > │ ABS_MT_POSITION_X 15 │ > │ │ > │ ABS_MT_POSITION_Y 10 │ > │ │ > │ ABS_MT_SYNC <-- first finger release and first finger press is generated │ > └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ Nope, that's wrong. You could skip the tracking ID -1 event and switch directly to ID 2. This is technically allowed by the protocol but a lot of userspace (anything Xorg and libinput) will struggle with it for historical reasons. Where you are re-using the same slot, you should always stop a touch and start the next touch in a separate frame. Direct switching also introduces some ambiguity because it merely means "kernel lost tracking of touch point", so userspace now has to decide whether it's the same touch or a new touch. > > second case > > ┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ > │ ABS_MT_TRACKING_ID -1 │ > │ │ > │ ABS_MT_SLOT 1 │ > │ │ > │ ABS_MT_TRACKING_ID 2 │ > │ │ > │ ABS_MT_POSITION_X 15 │ > │ │ > │ ABS_MT_POSITION_Y 10 │ > │ │ > │ ABS_MT_SYNC <-- first finger release and second finger press is generated │ > └────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ this is the correct sequence (except for the ABS_MT_SYNC bit :). Cheers, Peter _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://protect2.fireeye.com/url?k=b0d106c4-ed1dcf40-b0d08d8b-0cc47aa8f5ba-4eb0ded9c4a94a0e&q=1&u=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Fwayland-devel
|
_______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel