From 3244deffa1aedbb6c1af8c2dc993f1d771373c6a Mon Sep 17 00:00:00 2001 From: Henrik Rydberg Date: Tue, 15 Feb 2011 14:48:57 +0100 Subject: Optional XI2.1 support This patchs adds optional XI2.1 support to utouch-frame. The utouch/frame-xi2.h header contains helper functions equivalent to utouch/frame-mtdev.h. In addition, the device-to-screen mapping is handled via XEvents and optionally XIPropertyEvent. The latter allows free device placement via xinput set-prop, useful in multi- head setups, thanks to Chase Douglas. Touch frame events can be tested using the utouch-frame-test-xi2 tool. Use --with-xi to enable. Signed-off-by: Henrik Rydberg --- include/utouch/frame-xi2.h | 49 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 include/utouch/frame-xi2.h (limited to 'include/utouch/frame-xi2.h') diff --git a/include/utouch/frame-xi2.h b/include/utouch/frame-xi2.h new file mode 100644 index 0000000..5849c40 --- /dev/null +++ b/include/utouch/frame-xi2.h @@ -0,0 +1,49 @@ +/***************************************************************************** + * + * utouch-frame - Touch Frame Library + * + * Copyright (C) 2010-2011 Canonical Ltd. + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program. If not, see . + * + ****************************************************************************/ + +#ifndef _UTOUCH_FRAME_XI2_H +#define _UTOUCH_FRAME_XI2_H + +#ifdef __cplusplus +extern "C" { +#endif + +#define MTDEV_NO_LEGACY_API + +#include +#include + +int utouch_frame_is_supported_xi2(Display *dpy, const XIDeviceInfo *dev); + +int utouch_frame_init_xi2(utouch_frame_handle fh, + Display *dpy, const XIDeviceInfo *dev); + +int utouch_frame_configure_xi2(utouch_frame_handle fh, + const XConfigureEvent *ev); + +const struct utouch_frame * +utouch_frame_pump_xi2(utouch_frame_handle fh, const XIDeviceEvent *ev); + +#ifdef __cplusplus +} +#endif + +#endif -- cgit v1.2.3