summaryrefslogtreecommitdiffstats
path: root/src/platformsupport/input/shared/qtouchoutputmapping.cpp
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.agocs@qt.io>2016-09-14 14:05:05 +0200
committerLaszlo Agocs <laszlo.agocs@qt.io>2016-09-22 10:30:13 +0000
commitb638a7da38eba2e520a0636b9b08602a556b4849 (patch)
tree181165bb013d010952b116ecd3ceeba781f4d49b /src/platformsupport/input/shared/qtouchoutputmapping.cpp
parent036639c2b575de238a519cb029c4ba70d4c8980d (diff)
eglfs: Add missing virtual layout setting for DRM/KMS
Just setting virtualDesktopLayout and virtualIndex are not always enough. To create more complex shapes (e.g. a T-shaped cluster) the top-left position has to be specified explicitly. Enable this via an optional virtualPos property. This also involves improving evdevtouch's mapping functionality. Instead of fragile indices, rely on the screen name instead. Change-Id: I138840779032ad9da674bfef7763adfdfc74ccd4 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Diffstat (limited to 'src/platformsupport/input/shared/qtouchoutputmapping.cpp')
-rw-r--r--src/platformsupport/input/shared/qtouchoutputmapping.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/platformsupport/input/shared/qtouchoutputmapping.cpp b/src/platformsupport/input/shared/qtouchoutputmapping.cpp
index 55c1dc34f4..0a1afd4739 100644
--- a/src/platformsupport/input/shared/qtouchoutputmapping.cpp
+++ b/src/platformsupport/input/shared/qtouchoutputmapping.cpp
@@ -71,21 +71,21 @@ bool QTouchOutputMapping::load()
const QVariantMap output = outputs.at(i).toObject().toVariantMap();
if (!output.contains(QStringLiteral("touchDevice")))
continue;
- if (!output.contains(QStringLiteral("virtualIndex"))) {
- qWarning("evdevtouch: Output %d specifies touchDevice but not virtualIndex, this is wrong", i);
+ if (!output.contains(QStringLiteral("name"))) {
+ qWarning("evdevtouch: Output %d specifies touchDevice but not name, this is wrong", i);
continue;
}
const QString &deviceNode = output.value(QStringLiteral("touchDevice")).toString();
- const int screenIndex = output.value(QStringLiteral("virtualIndex")).toInt();
- m_screenIndexTable.insert(deviceNode, screenIndex);
+ const QString &screenName = output.value(QStringLiteral("name")).toString();
+ m_screenTable.insert(deviceNode, screenName);
}
return true;
}
-int QTouchOutputMapping::screenIndexForDeviceNode(const QString &deviceNode)
+QString QTouchOutputMapping::screenNameForDeviceNode(const QString &deviceNode)
{
- return m_screenIndexTable.value(deviceNode, -1);
+ return m_screenTable.value(deviceNode);
}
QT_END_NAMESPACE