Multitouch in X - Pointer emulation question ?
peter.hutterer at who-t.net
Tue Oct 22 22:37:40 PDT 2013
On Wed, Oct 23, 2013 at 07:27:45AM +0200, Patrice B wrote:
> Ok. Thanks a lot for this answer !
> Another question about emulated pointer events, I've noticed that with
> emulated button press, of course if my app does not register for XI 2.2,
> the .xbutton.subwindow field of the XEvent is always set to zero. If this
> button press comes from the mouse, this field is correctly set. Is it a
> bug, a normal behaviour, or is there again something wrong with my apps ?
sounds like bug, in general emulated events should have the same data as
normal mouse events.
> 2013/10/23 Peter Hutterer <peter.hutterer at who-t.net>
> > On Thu, Oct 17, 2013 at 11:55:24AM +0200, Patrice B wrote:
> > > Hello,
> > >
> > > I'm working on a kernel evdev driver that provides MT events. This
> > device
> > > is correctly detected by evdev Xorg driver and I'm able to see MT events
> > > using "xinput text-xi2". I wrote also a small program based on xi2 which
> > > makes two rectangles follow my fingers on the screen and it works.
> > >
> > > What is a bit "fuzzy" for me is how programs that don't handle XI2
> > should
> > > behave with MT driver. I read
> > > http://who-t.blogspot.fr/2011/12/multitouch-in-x-pointer-emulation.html,
> > > and I thought common application such as xev should received emulated
> > > classic X events. They don't receive anything in my case. Should they ?
> > > Does something about this emulation needs to be done in kernel driver ?
> > the server decides which client gets MT and which one gets an emulated
> > pointer on a per-client basis. your test program that registers for XI 2.2
> > won't see pointer emulation, but xev still should. Last I checked, this
> > worked here.
> > either way, there's nothing you need to do in the kernel driver. if you
> > speak the MT protocol B, the rest should be handled automatically.
> > Cheers,
> > Peter
More information about the xorg