diff options
author | Thomas Zander <t.zander@nokia.com> | 2010-03-04 12:16:09 (GMT) |
---|---|---|
committer | Thomas Zander <t.zander@nokia.com> | 2010-03-04 12:16:09 (GMT) |
commit | f1e39e7dea8634695263435f0bf912ce19c43195 (patch) | |
tree | 6464b66432a33bba8a27dfb93f24d67dc9cbf6eb | |
parent | a9bf9766f18e15fbecf53ac1cc9cf57c9dba259c (diff) | |
download | Qt-f1e39e7dea8634695263435f0bf912ce19c43195.zip Qt-f1e39e7dea8634695263435f0bf912ce19c43195.tar.gz Qt-f1e39e7dea8634695263435f0bf912ce19c43195.tar.bz2 |
Make tablet detection work with new wacom drivers
wacom driver fixed a bug in assigning atom names where it messed
up the device names. Their solution apparently renamed the atoms
The type names used now are "STYLUS", "CURSOR", "ERASER", "PAD"
and "TOUCH" for each respective device. This change detects
those as our tablet input devices.
Reviewed-by: Benjamin Poulain <benjamin.poulain@nokia.com>
Task-number: QTBUG-8599
-rw-r--r-- | src/gui/kernel/qapplication_x11.cpp | 9 | ||||
-rw-r--r-- | src/gui/kernel/qt_x11_p.h | 3 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/gui/kernel/qapplication_x11.cpp b/src/gui/kernel/qapplication_x11.cpp index 121e9ec..25a7750 100644 --- a/src/gui/kernel/qapplication_x11.cpp +++ b/src/gui/kernel/qapplication_x11.cpp @@ -320,9 +320,14 @@ static const char * x11_atomnames = { "_XEMBED\0" "_XEMBED_INFO\0" + // Wacom old. (before version 0.10) "Wacom Stylus\0" "Wacom Cursor\0" "Wacom Eraser\0" + + // Tablet + "STYLUS\0" + "ERASER\0" }; Q_GUI_EXPORT QX11Data *qt_x11Data = 0; @@ -2366,12 +2371,12 @@ void qt_init(QApplicationPrivate *priv, int, gotStylus = true; } #else - if (devs->type == ATOM(XWacomStylus)) { + if (devs->type == ATOM(XWacomStylus) || devs->type == ATOM(XTabletStylus)) { deviceType = QTabletEvent::Stylus; if (wacomDeviceName()->isEmpty()) wacomDeviceName()->append(devs->name); gotStylus = true; - } else if (devs->type == ATOM(XWacomEraser)) { + } else if (devs->type == ATOM(XWacomEraser) || devs->type == ATOM(XTabletEraser)) { deviceType = QTabletEvent::XFreeEraser; gotEraser = true; } diff --git a/src/gui/kernel/qt_x11_p.h b/src/gui/kernel/qt_x11_p.h index d110084..14e04bb 100644 --- a/src/gui/kernel/qt_x11_p.h +++ b/src/gui/kernel/qt_x11_p.h @@ -675,6 +675,9 @@ struct QX11Data XWacomCursor, XWacomEraser, + XTabletStylus, + XTabletEraser, + NPredefinedAtoms, _QT_SETTINGS_TIMESTAMP = NPredefinedAtoms, |