summaryrefslogtreecommitdiffstats
path: root/config.tests
diff options
context:
space:
mode:
authorJocelyn Turcotte <jocelyn.turcotte@nokia.com>2011-10-14 15:55:35 +0200
committerQt by Nokia <qt-info@nokia.com>2011-10-17 18:03:13 +0200
commit4521e2ec61c6eddd6d4a8454f84a05d9a3195f4b (patch)
treeb872d62023e05c9299a491259abdedb72c783a73 /config.tests
parent09cad13e49a9b6e6be565854fa4404d604939c03 (diff)
Add multipoint touch support for Harmattan to the xcb platform plugin.
Proper multipoint touch support was only introduced in XInput2.1, but Harmattan uses a tweaked version of XInput2.0 that transfers touch data through mouse events. This patch applies on the xcb plugin a subset of the changes that were applied on the Qt 4.7 that was shipped to Harmattan to get similar multipoint touch support. Change-Id: Ifda7ad40de29d7ded1443d4f78b3ec3807303a9f Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Diffstat (limited to 'config.tests')
-rw-r--r--config.tests/x11/xinput2/xinput2.cpp75
-rw-r--r--config.tests/x11/xinput2/xinput2.pro4
2 files changed, 79 insertions, 0 deletions
diff --git a/config.tests/x11/xinput2/xinput2.cpp b/config.tests/x11/xinput2/xinput2.cpp
new file mode 100644
index 0000000000..14a51f4d28
--- /dev/null
+++ b/config.tests/x11/xinput2/xinput2.cpp
@@ -0,0 +1,75 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the config.tests of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** GNU Lesser General Public License Usage
+** This file may be used under the terms of the GNU Lesser General Public
+** License version 2.1 as published by the Free Software Foundation and
+** appearing in the file LICENSE.LGPL included in the packaging of this
+** file. Please review the following information to ensure the GNU Lesser
+** General Public License version 2.1 requirements will be met:
+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU General
+** Public License version 3.0 as published by the Free Software Foundation
+** and appearing in the file LICENSE.GPL included in the packaging of this
+** file. Please review the following information to ensure the GNU General
+** Public License version 3.0 requirements will be met:
+** http://www.gnu.org/copyleft/gpl.html.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms and
+** conditions contained in a signed written agreement between you and Nokia.
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <X11/Xlib.h>
+#include <X11/extensions/XInput2.h>
+#include <X11/extensions/Xge.h>
+
+#ifndef XInput_2_0
+# error "Missing XInput_2_0 #define"
+#endif
+
+int main(int, char **)
+{
+ // need XGenericEventCookie for XInput2 to work
+ Display *dpy = 0;
+ XEvent xevent;
+ if (XGetEventData(dpy, &xevent.xcookie)) {
+ XFreeEventData(dpy, &xevent.xcookie);
+ }
+
+ XIEvent *xievent;
+ xievent = 0;
+
+ XIDeviceEvent *xideviceevent;
+ xideviceevent = 0;
+
+ XIHierarchyEvent *xihierarchyevent;
+ xihierarchyevent = 0;
+
+ int deviceid = 0;
+ int len = 0;
+ Atom *atoms = XIListProperties(dpy, deviceid, &len);
+ if (atoms)
+ XFree(atoms);
+
+ return 0;
+}
diff --git a/config.tests/x11/xinput2/xinput2.pro b/config.tests/x11/xinput2/xinput2.pro
new file mode 100644
index 0000000000..ae8819b3d1
--- /dev/null
+++ b/config.tests/x11/xinput2/xinput2.pro
@@ -0,0 +1,4 @@
+CONFIG += x11
+CONFIG -= qt
+LIBS += -lXi
+SOURCES = xinput2.cpp