diff options
author | Denis Dzyubenko <denis.dzyubenko@nokia.com> | 2009-10-28 12:06:03 (GMT) |
---|---|---|
committer | Denis Dzyubenko <denis.dzyubenko@nokia.com> | 2009-10-28 12:49:30 (GMT) |
commit | 3ce8fb5e754014ed29cabf9e33b71dabecb02e46 (patch) | |
tree | 321dddc236123d1b144517ff281284a1b91feabe /src/gui/kernel/qgesturemanager_p.h | |
parent | a2b12363c96d4307444552eefc21eebf430dba5d (diff) | |
download | Qt-3ce8fb5e754014ed29cabf9e33b71dabecb02e46.zip Qt-3ce8fb5e754014ed29cabf9e33b71dabecb02e46.tar.gz Qt-3ce8fb5e754014ed29cabf9e33b71dabecb02e46.tar.bz2 |
Fixed the gesture event filtering through multiple gesture recognizers.
When there are several gesture recognizers registered for the same
gesture type, we need to know which recognizer we need to get a state
object for since those QGesture objects are tied to the recognizer that
created them.
Reviewed-by: Thomas Zander
Diffstat (limited to 'src/gui/kernel/qgesturemanager_p.h')
-rw-r--r-- | src/gui/kernel/qgesturemanager_p.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/gui/kernel/qgesturemanager_p.h b/src/gui/kernel/qgesturemanager_p.h index 5a2816c..f128273 100644 --- a/src/gui/kernel/qgesturemanager_p.h +++ b/src/gui/kernel/qgesturemanager_p.h @@ -116,7 +116,7 @@ private: } }; - QMap<ObjectGesture, QGesture *> m_objectGestures; + QMap<ObjectGesture, QList<QGesture *> > m_objectGestures; QMap<QGesture *, QGestureRecognizer *> m_gestureToRecognizer; QHash<QGesture *, QObject *> m_gestureOwners; @@ -128,7 +128,8 @@ private: QMap<QGesture *, QGestureRecognizer *> m_deletedRecognizers; void cleanupGesturesForRemovedRecognizer(QGesture *gesture); - QGesture *getState(QObject *widget, Qt::GestureType gesture); + QGesture *getState(QObject *widget, QGestureRecognizer *recognizer, + Qt::GestureType gesture); void deliverEvents(const QSet<QGesture *> &gestures, QSet<QGesture *> *undeliveredGestures); void getGestureTargets(const QSet<QGesture*> &gestures, |