summaryrefslogtreecommitdiffstats
path: root/src/plugins/generic/evdevtouch/qevdevtouch.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/generic/evdevtouch/qevdevtouch.cpp')
-rw-r--r--src/plugins/generic/evdevtouch/qevdevtouch.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/plugins/generic/evdevtouch/qevdevtouch.cpp b/src/plugins/generic/evdevtouch/qevdevtouch.cpp
index 9e6347457d..b702807cab 100644
--- a/src/plugins/generic/evdevtouch/qevdevtouch.cpp
+++ b/src/plugins/generic/evdevtouch/qevdevtouch.cpp
@@ -46,7 +46,7 @@
#include <QGuiApplication>
#include <QDebug>
#include <QtCore/private/qcore_unix_p.h>
-#include <QtPlatformSupport/private/qudevhelper_p.h>
+#include <QtPlatformSupport/private/qudevicehelper_p.h>
#include <linux/input.h>
#ifdef USE_MTDEV
@@ -146,7 +146,17 @@ QTouchScreenHandler::QTouchScreenHandler(const QString &spec)
setObjectName(QLatin1String("Evdev Touch Handler"));
QString dev;
- q_udev_devicePath(UDev_Touchpad | UDev_Touchscreen, &dev);
+
+ // try to let udev scan for already connected devices
+ QScopedPointer<QUDeviceHelper> udeviceHelper(QUDeviceHelper::createUDeviceHelper(QUDeviceHelper::UDev_Touchpad | QUDeviceHelper::UDev_Touchscreen, this));
+ if (udeviceHelper) {
+ QStringList devices = udeviceHelper->scanConnectedDevices();
+
+ // only the first device found is used for now
+ if (devices.size() > 0)
+ dev = devices[0];
+ }
+
if (dev.isEmpty())
dev = QLatin1String("/dev/input/event0");