diff options
author | Bhooshan Supe <ext-bhooshan.supe@nokia.com> | 2012-04-10 10:57:38 -0700 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-04-12 04:15:32 +0200 |
commit | 3a4ed33140bb5dc1b2bf9e783dd26d5fde7c857b (patch) | |
tree | 7f4f6e9f13cb91d0c029fd47ec61f33ca4c734f9 /src | |
parent | e78424523884f7c0ae48590322c071fb0d19a56b (diff) |
Remove input plugins hard libudev dependency
libudev extends the base functionality of these plugins but should not
be mandatory as it is missing on many embedded devices that still
actually require input devices (keyboard and/or mouse and/or
touchscreen) support
Change-Id: Ieeb949f1af5e774578f689a63f47a8c48f546ac1
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Diffstat (limited to 'src')
10 files changed, 34 insertions, 7 deletions
diff --git a/src/plugins/generic/evdevkeyboard/evdevkeyboard.pro b/src/plugins/generic/evdevkeyboard/evdevkeyboard.pro index 21e4bf63ee..b632e5b7ec 100644 --- a/src/plugins/generic/evdevkeyboard/evdevkeyboard.pro +++ b/src/plugins/generic/evdevkeyboard/evdevkeyboard.pro @@ -19,4 +19,6 @@ SOURCES = main.cpp \ OTHER_FILES += \ evdevkeyboard.json -LIBS += $$QMAKE_LIBS_LIBUDEV +contains(QT_CONFIG, libudev) { + LIBS += $$QMAKE_LIBS_LIBUDEV +} diff --git a/src/plugins/generic/evdevkeyboard/qevdevkeyboardmanager.cpp b/src/plugins/generic/evdevkeyboard/qevdevkeyboardmanager.cpp index 0938fdc2e4..697556c4ac 100644 --- a/src/plugins/generic/evdevkeyboard/qevdevkeyboardmanager.cpp +++ b/src/plugins/generic/evdevkeyboard/qevdevkeyboardmanager.cpp @@ -56,7 +56,11 @@ QEvdevKeyboardManager::QEvdevKeyboardManager(const QString &key, const QString & { Q_UNUSED(key); +#ifndef QT_NO_LIBUDEV bool useUDev = true; +#else + bool useUDev = false; +#endif // QT_NO_LIBUDEV QStringList args = specification.split(QLatin1Char(':')); QStringList devices; @@ -77,6 +81,7 @@ QEvdevKeyboardManager::QEvdevKeyboardManager(const QString &key, const QString & foreach (const QString &device, devices) addKeyboard(device); +#ifndef QT_NO_LIBUDEV if (useUDev) { #ifdef QT_QPA_KEYMAP_DEBUG qWarning() << "Use UDev for device discovery"; @@ -94,6 +99,7 @@ QEvdevKeyboardManager::QEvdevKeyboardManager(const QString &key, const QString & connect(m_udeviceHelper, SIGNAL(deviceRemoved(QString,QUDeviceTypes)), this, SLOT(removeKeyboard(QString))); } } +#endif // QT_NO_LIBUDEV } QEvdevKeyboardManager::~QEvdevKeyboardManager() diff --git a/src/plugins/generic/evdevkeyboard/qevdevkeyboardmanager.h b/src/plugins/generic/evdevkeyboard/qevdevkeyboardmanager.h index c776af2ec5..a505ce834e 100644 --- a/src/plugins/generic/evdevkeyboard/qevdevkeyboardmanager.h +++ b/src/plugins/generic/evdevkeyboard/qevdevkeyboardmanager.h @@ -44,7 +44,9 @@ #include "qevdevkeyboardhandler.h" +#ifndef QT_NO_LIBUDEV #include <QtPlatformSupport/private/qudevicehelper_p.h> +#endif // QT_NO_LIBUDEV #include <QObject> #include <QHash> @@ -68,7 +70,9 @@ private slots: private: QString m_spec; QHash<QString,QEvdevKeyboardHandler*> m_keyboards; +#ifndef QT_NO_LIBUDEV QUDeviceHelper *m_udeviceHelper; +#endif // QT_NO_LIBUDEV }; QT_END_HEADER diff --git a/src/plugins/generic/evdevmouse/evdevmouse.pro b/src/plugins/generic/evdevmouse/evdevmouse.pro index f322a5bd1a..fb9c0e71b8 100644 --- a/src/plugins/generic/evdevmouse/evdevmouse.pro +++ b/src/plugins/generic/evdevmouse/evdevmouse.pro @@ -17,4 +17,6 @@ SOURCES = main.cpp \ OTHER_FILES += \ evdevmouse.json -LIBS += $$QMAKE_LIBS_LIBUDEV +contains(QT_CONFIG, libudev) { + LIBS += $$QMAKE_LIBS_LIBUDEV +} diff --git a/src/plugins/generic/evdevmouse/qevdevmousehandler.cpp b/src/plugins/generic/evdevmouse/qevdevmousehandler.cpp index 1821c2b06b..7c05e9ff11 100644 --- a/src/plugins/generic/evdevmouse/qevdevmousehandler.cpp +++ b/src/plugins/generic/evdevmouse/qevdevmousehandler.cpp @@ -48,7 +48,6 @@ #include <qplatformdefs.h> #include <private/qcore_unix_p.h> // overrides QT_OPEN -#include <QtPlatformSupport/private/qudevicehelper_p.h> #include <errno.h> diff --git a/src/plugins/generic/evdevmouse/qevdevmousemanager.cpp b/src/plugins/generic/evdevmouse/qevdevmousemanager.cpp index f8e77abe55..cf3fe1f498 100644 --- a/src/plugins/generic/evdevmouse/qevdevmousemanager.cpp +++ b/src/plugins/generic/evdevmouse/qevdevmousemanager.cpp @@ -56,7 +56,11 @@ QEvdevMouseManager::QEvdevMouseManager(const QString &key, const QString &specif { Q_UNUSED(key); +#ifndef QT_NO_LIBUDEV bool useUDev = true; +#else + bool useUDev = false; +#endif // QT_NO_LIBUDEV QStringList args = specification.split(QLatin1Char(':')); QStringList devices; @@ -77,6 +81,7 @@ QEvdevMouseManager::QEvdevMouseManager(const QString &key, const QString &specif foreach (const QString &device, devices) addMouse(device); +#ifndef QT_NO_LIBUDEV if (useUDev) { #ifdef QT_QPA_MOUSEMANAGER_DEBUG qWarning() << "Use UDev for device discovery"; @@ -94,6 +99,7 @@ QEvdevMouseManager::QEvdevMouseManager(const QString &key, const QString &specif connect(m_udeviceHelper, SIGNAL(deviceRemoved(QString,QUDeviceTypes)), this, SLOT(removeMouse(QString))); } } +#endif // QT_NO_LIBUDEV } QEvdevMouseManager::~QEvdevMouseManager() diff --git a/src/plugins/generic/evdevmouse/qevdevmousemanager.h b/src/plugins/generic/evdevmouse/qevdevmousemanager.h index a42257b6a2..f51bd455e8 100644 --- a/src/plugins/generic/evdevmouse/qevdevmousemanager.h +++ b/src/plugins/generic/evdevmouse/qevdevmousemanager.h @@ -44,7 +44,9 @@ #include "qevdevmousehandler.h" +#ifndef QT_NO_LIBUDEV #include <QtPlatformSupport/private/qudevicehelper_p.h> +#endif // QT_NO_LIBUDEV #include <QObject> #include <QHash> @@ -68,7 +70,9 @@ private slots: private: QString m_spec; QHash<QString,QEvdevMouseHandler*> m_mice; +#ifndef QT_NO_LIBUDEV QUDeviceHelper *m_udeviceHelper; +#endif // QT_NO_LIBUDEV }; QT_END_HEADER diff --git a/src/plugins/generic/evdevtouch/evdevtouch.pro b/src/plugins/generic/evdevtouch/evdevtouch.pro index 192a87c2a3..c7d298d534 100644 --- a/src/plugins/generic/evdevtouch/evdevtouch.pro +++ b/src/plugins/generic/evdevtouch/evdevtouch.pro @@ -16,7 +16,9 @@ QT += core-private platformsupport-private OTHER_FILES += \ evdevtouch.json -LIBS += $$QMAKE_LIBS_LIBUDEV +contains(QT_CONFIG, libudev) { + LIBS += $$QMAKE_LIBS_LIBUDEV +} # DEFINES += USE_MTDEV diff --git a/src/plugins/generic/evdevtouch/qevdevtouch.cpp b/src/plugins/generic/evdevtouch/qevdevtouch.cpp index b702807cab..c9c49839d6 100644 --- a/src/plugins/generic/evdevtouch/qevdevtouch.cpp +++ b/src/plugins/generic/evdevtouch/qevdevtouch.cpp @@ -46,7 +46,9 @@ #include <QGuiApplication> #include <QDebug> #include <QtCore/private/qcore_unix_p.h> +#ifndef QT_NO_LIBUDEV #include <QtPlatformSupport/private/qudevicehelper_p.h> +#endif // QT_NO_LIBUDEV #include <linux/input.h> #ifdef USE_MTDEV @@ -147,6 +149,7 @@ QTouchScreenHandler::QTouchScreenHandler(const QString &spec) QString dev; +#ifndef QT_NO_LIBUDEV // try to let udev scan for already connected devices QScopedPointer<QUDeviceHelper> udeviceHelper(QUDeviceHelper::createUDeviceHelper(QUDeviceHelper::UDev_Touchpad | QUDeviceHelper::UDev_Touchscreen, this)); if (udeviceHelper) { @@ -156,6 +159,7 @@ QTouchScreenHandler::QTouchScreenHandler(const QString &spec) if (devices.size() > 0) dev = devices[0]; } +#endif // QT_NO_LIBUDEV if (dev.isEmpty()) dev = QLatin1String("/dev/input/event0"); diff --git a/src/plugins/generic/generic.pro b/src/plugins/generic/generic.pro index 06bc0091f4..86b529b39e 100644 --- a/src/plugins/generic/generic.pro +++ b/src/plugins/generic/generic.pro @@ -3,7 +3,5 @@ TEMPLATE = subdirs linux-g++-maemo: SUBDIRS += meego contains(QT_CONFIG, evdev) { - contains(QT_CONFIG, libudev) { - SUBDIRS += evdevmouse evdevtouch evdevkeyboard - } + SUBDIRS += evdevmouse evdevtouch evdevkeyboard } |