core: Add XInput2 device map implementation

This commit is contained in:
Carlos Garnacho
2011-06-13 23:29:37 +02:00
parent 3f7193e558
commit f0705e142c
5 changed files with 391 additions and 1 deletions

View File

@@ -71,6 +71,10 @@
#ifdef HAVE_XCURSOR
#include <X11/Xcursor/Xcursor.h>
#endif
#ifdef HAVE_XINPUT2
#include <X11/extensions/XInput2.h>
#include "device-map-xi2.h"
#endif
#include <X11/extensions/Xrender.h>
#include <X11/extensions/Xcomposite.h>
#include <X11/extensions/Xdamage.h>
@@ -1725,6 +1729,17 @@ event_callback (XEvent *event,
}
#endif /* HAVE_SHAPE */
#ifdef HAVE_XINPUT2
if (display->have_xinput2 &&
meta_device_map_xi2_handle_hierarchy_event (META_DEVICE_MAP_XI2 (display->device_map),
event))
{
/* Let GDK Handle the event too for its own device accounting */
filter_out_event = FALSE;
bypass_compositor = FALSE;
}
else
#endif
if (meta_input_event_get_type (display, event, &evtype))
{
Window xwindow = meta_input_event_get_window (display, event);