Why got XEvent type 84 in _x11_fd_callback?

Leslie Zhai xiangzhai83 at gmail.com
Wed Jan 15 17:55:43 PST 2014

Hi Peter,

You are a good mentor to me :)

Here is xdpyinfo -ext XInputExtension in my box shown as below:

XInputExtension version 2.3 opcode: 131, base event: 66, base error: 129
   Extended devices :
     "Virtual core pointer"    [XPointer]
     "Virtual core keyboard"    [XKeyboard]
     "Virtual core XTEST pointer"    [XExtensionPointer]
     "Virtual core XTEST keyboard"    [XExtensionKeyboard]
     "Power Button"    [XExtensionKeyboard]
     "Video Bus"    [XExtensionKeyboard]
     "Sleep Button"    [XExtensionKeyboard]
     "Logitech USB-PS/2 Optical Mouse"    [XExtensionPointer]
     "HID 06f3:0309"    [XExtensionKeyboard]
     "HID 06f3:0309"    [XExtensionPointer]
     "AT Translated Set 2 keyboard"    [XExtensionKeyboard]
     "SynPS/2 Synaptics TouchPad"    [XExtensionPointer]
     "HP WMI hotkeys"    [XExtensionKeyboard]

And I read bout /usr/include/X11/extensions/XIproto.h to see Event 
constants used by library :)

Emm... I have a doubt about that there are might some private 
repostories for Ubuntu Phone based on Mir, replaced Wayland_ prefix to 
Mir_ just kidding, sort of private source code base :P


> On Wed, Jan 15, 2014 at 02:22:11PM +0800, Leslie Zhai wrote:
>> Hi synaptics developers,
>> In geis-2.2.16, libgeis/backend/grail/geis_grail_backend.c source
>> code file, about the 1143 line,
>> http://bazaar.launchpad.net/~oif-team/geis/trunk/view/head:/libgeis/backend/grail/geis_grail_backend.c#L1147
>> it would get error XEvent type, printf the XEvent type is 84.
>> My development enviorment shown as below:
>> 3.12.7-2-ARCH i686
>> xf86-input-synaptics-1.7.3
>> geis-2.2.16
>> touchegg svn reversion 189
>> gnome-shell 3.10.2
>> I used touchegg, a qt4 gesture recognition application based on
>> geis, to debug gesture recognition, and my touchpad supports
>> multitouch, for example mtdev_has_mt_event(mtdev, ABS_MT_SLOT), when
>> I used 3 fingers to drag, geis got error XEvent type 84 in
>> _x11_fd_callback function.
> 84 is probably some XInput event, just take the base event you get from
> xdpyinfo -ext XInputExtension, then subtract that from 84 and it'll tell you
> what the matching XI_* event from XIproto.h is.
> other than that I don't know much about geis, there was a multitouch-dev
> list or so when geis came out, maybe someone on there knows though it's
> pretty dead these days
> (https://launchpad.net/~multi-touch-dev)
>> I argued that it might be xf86-input-synaptics-1.7.3`s issue,
>> because geis backend only received XEvent, then classified the
>> gesture, but synaptics post the multitouch event by
>> xf86PostTouchEvent, in xf86-input-synaptics=1.7.3 src/synaptics.c,
>> about the line 2710,
>> http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/tree/src/synaptics.c?h=synaptics-1.7-branch#n2710
> synaptics only sends touch events under very specific conditions and
> configurations. unless you've enabled those configurations you may be
> following the wrong lead.
>> And why ubuntu phone with multitouch touchscreen works well? It is
>> based on Mir, utouch-geis, sort of gesture recognition utils, is not
>> it? or it is android-based, different from Linux multitouch
>> protocol?
>> https://www.kernel.org/doc/Documentation/input/multi-touch-protocol.txt
> I have no idea what the question is here, sorry.
> Cheers,
>     Peter

More information about the xorg-devel mailing list