diff options
-rw-r--r-- | src/platformsupport/eglconvenience/qeglplatformintegration.cpp | 12 | ||||
-rw-r--r-- | src/platformsupport/input/tslib/qtslib.cpp | 6 | ||||
-rw-r--r-- | src/platformsupport/input/tslib/qtslib_p.h | 3 |
3 files changed, 17 insertions, 4 deletions
diff --git a/src/platformsupport/eglconvenience/qeglplatformintegration.cpp b/src/platformsupport/eglconvenience/qeglplatformintegration.cpp index a9f0c0f448..fea2ae2369 100644 --- a/src/platformsupport/eglconvenience/qeglplatformintegration.cpp +++ b/src/platformsupport/eglconvenience/qeglplatformintegration.cpp @@ -50,6 +50,10 @@ #include <QtPlatformSupport/private/qevdevtouch_p.h> #endif +#if !defined(QT_NO_TSLIB) && (!defined(Q_OS_ANDROID) || defined(Q_OS_ANDROID_NO_SDK)) +#include <QtPlatformSupport/private/qtslib_p.h> +#endif + #include <QtPlatformHeaders/qeglfsfunctions.h> #include "qeglplatformintegration_p.h" @@ -351,7 +355,13 @@ void QEGLPlatformIntegration::createInputHandlers() if (cursor) cursor->setMouseDeviceDiscovery(mouseMgr->deviceDiscovery()); } - new QEvdevTouchScreenHandlerThread(QString() /* spec */, this); +#ifndef QT_NO_TSLIB + const bool useTslib = qEnvironmentVariableIntValue("QT_QPA_EGLFS_TSLIB"); + if (useTslib) + new QTsLibMouseHandler(QLatin1String("TsLib"), QString() /* spec */); + else +#endif // QT_NO_TSLIB + new QEvdevTouchScreenHandlerThread(QString() /* spec */, this); #endif } diff --git a/src/platformsupport/input/tslib/qtslib.cpp b/src/platformsupport/input/tslib/qtslib.cpp index dea2c7cb72..e75fd9e691 100644 --- a/src/platformsupport/input/tslib/qtslib.cpp +++ b/src/platformsupport/input/tslib/qtslib.cpp @@ -48,8 +48,10 @@ QT_BEGIN_NAMESPACE Q_LOGGING_CATEGORY(qLcTsLib, "qt.qpa.input") QTsLibMouseHandler::QTsLibMouseHandler(const QString &key, - const QString &specification) - : m_notify(0), m_x(0), m_y(0), m_pressed(0), m_rawMode(false) + const QString &specification, + QObject *parent) + : QObject(parent), + m_notify(0), m_x(0), m_y(0), m_pressed(0), m_rawMode(false) { qCDebug(qLcTsLib) << "Initializing tslib plugin" << key << specification; setObjectName(QLatin1String("TSLib Mouse Handler")); diff --git a/src/platformsupport/input/tslib/qtslib_p.h b/src/platformsupport/input/tslib/qtslib_p.h index da18abea46..4bcefb6cb9 100644 --- a/src/platformsupport/input/tslib/qtslib_p.h +++ b/src/platformsupport/input/tslib/qtslib_p.h @@ -45,8 +45,9 @@ class QSocketNotifier; class QTsLibMouseHandler : public QObject { Q_OBJECT + public: - QTsLibMouseHandler(const QString &key, const QString &specification); + QTsLibMouseHandler(const QString &key, const QString &specification, QObject *parent = 0); ~QTsLibMouseHandler(); private slots: |