diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2017-10-16 15:24:00 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2017-10-18 06:20:49 +0000 |
commit | 3760bc759045c58c548b8f6b8a0a9c1efaa90cd4 (patch) | |
tree | 86c57985525629b3b1ae4c8b41020561d444d1de /tests/manual | |
parent | dc03ac15b074716cd1afdda2442c78c7583cf730 (diff) |
QTabletEvent/manual widgets test: Fix reporting of proximity events
Proximit events are sent to the QGuiApplication, catch them via
event filter.
Change-Id: I7f896e7d9f5c90347b9e3c708feb69abd1c5fc95
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'tests/manual')
-rw-r--r-- | tests/manual/qtabletevent/regular_widgets/main.cpp | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/tests/manual/qtabletevent/regular_widgets/main.cpp b/tests/manual/qtabletevent/regular_widgets/main.cpp index a43ea22b0f..339d1d3633 100644 --- a/tests/manual/qtabletevent/regular_widgets/main.cpp +++ b/tests/manual/qtabletevent/regular_widgets/main.cpp @@ -59,6 +59,25 @@ struct TabletPoint qreal angle; }; +class ProximityEventFilter : public QObject +{ +public: + explicit ProximityEventFilter(QObject *parent) : QObject(parent) { } + + bool eventFilter(QObject *, QEvent *event) override + { + switch (event->type()) { + case QEvent::TabletEnterProximity: + case QEvent::TabletLeaveProximity: + qDebug() << event; + break; + default: + break; + } + return false; + } +}; + class EventReportWidget : public QWidget { Q_OBJECT @@ -149,10 +168,6 @@ void EventReportWidget::tabletEvent(QTabletEvent *event) QWidget::tabletEvent(event); bool isMove = false; switch (event->type()) { - case QEvent::TabletEnterProximity: - case QEvent::TabletLeaveProximity: - qDebug() << "proximity" << event; - break; case QEvent::TabletMove: m_points.push_back(TabletPoint(event->pos(), TabletMove, m_lastButton, event->pointerType(), event->pressure(), event->rotation())); update(); @@ -203,6 +218,7 @@ void EventReportWidget::timerEvent(QTimerEvent *) int main(int argc, char *argv[]) { QApplication app(argc, argv); + app.installEventFilter(new ProximityEventFilter(&app)); QMainWindow mainWindow; mainWindow.setWindowTitle(QString::fromLatin1("Tablet Test %1").arg(QT_VERSION_STR)); EventReportWidget *widget = new EventReportWidget; |