diff options
author | Laszlo Agocs <laszlo.agocs@digia.com> | 2013-09-14 20:31:54 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-04 21:15:15 +0200 |
commit | 0a92295ca829a62125c9f122fd3daec991993855 (patch) | |
tree | c2be1af86b694be234fd3c470a61243b7d5d388d /src/corelib | |
parent | 69e78b9a0764ea5ec56689f09311741d4fc5870e (diff) |
Relay mouse event synthesization information
Make platform plugins, like the windows one, able to indicate
if a mouse event is synthesized from a touch event by the OS.
This will be valuable information for the Quick2 event handlers.
No new member variables are added to QMouseEvent. Instead, the enum
value is encoded in the caps member, there are plenty of bits
available in it.
This introduces Qt::MouseEventSource and QMouseEvent::source() as
public APIs.
Change-Id: If087a0bafb33a6cd7891bd07b84871358f6aba69
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/global/qnamespace.h | 6 | ||||
-rw-r--r-- | src/corelib/global/qnamespace.qdoc | 22 |
2 files changed, 28 insertions, 0 deletions
diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h index 420721cb54..1409e5d977 100644 --- a/src/corelib/global/qnamespace.h +++ b/src/corelib/global/qnamespace.h @@ -1584,6 +1584,12 @@ public: ScrollUpdate, ScrollEnd }; + + enum MouseEventSource { + MouseEventNotSynthesized, + MouseEventSynthesizedBySystem, + MouseEventSynthesizedByQt + }; } #ifdef Q_MOC_RUN ; diff --git a/src/corelib/global/qnamespace.qdoc b/src/corelib/global/qnamespace.qdoc index 1cd2321ef6..63afd707c1 100644 --- a/src/corelib/global/qnamespace.qdoc +++ b/src/corelib/global/qnamespace.qdoc @@ -2895,3 +2895,25 @@ \value ScrollEnd Scrolling has ended, but the scrolling distance did not change anymore. */ + +/*! + \enum Qt::MouseEventSource + \since 5.3 + + This enum describes the source of a mouse event and can be useful + to determine if the event is an artificial mouse event originating + from another device such as a touchscreen. + + \value MouseEventNotSynthesized The most common value. On + platforms where such information is available this value indicates + that the event was generated in response to a genuine mouse event + in the system. + + \value MouseEventSynthesizedBySystem Indicates that the mouse + event was synthesized from a touch event by the platform. + + \value MouseEventSynthesizedByQt Indicates that the mouse event was + synthesized from an unhandled touch event by Qt. + + \sa Qt::AA_SynthesizeMouseForUnhandledTouchEvents +*/ |