summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qapplication_p.h
diff options
context:
space:
mode:
authorBradley T. Hughes <bradley.hughes@nokia.com>2009-05-28 07:57:36 (GMT)
committerBradley T. Hughes <bradley.hughes@nokia.com>2009-05-28 07:57:36 (GMT)
commit9667870db5b929c76656f3a4235b9539a1d5de5b (patch)
treeb6b74e837b9f26f113036075fdd9077ab0ff9996 /src/gui/kernel/qapplication_p.h
parent2101aa8e9ec65864878b027d66d069542da8677f (diff)
downloadQt-9667870db5b929c76656f3a4235b9539a1d5de5b.zip
Qt-9667870db5b929c76656f3a4235b9539a1d5de5b.tar.gz
Qt-9667870db5b929c76656f3a4235b9539a1d5de5b.tar.bz2
Don't try to maintain a current and active list of points for the app and widgets/items
Instead, build the list of touchPoints per event. This solves the problem when encountering releases early in the active/current list while there are still touch points in move/stationary states (which effectively caused the code to "forget" about the released point).
Diffstat (limited to 'src/gui/kernel/qapplication_p.h')
-rw-r--r--src/gui/kernel/qapplication_p.h10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/gui/kernel/qapplication_p.h b/src/gui/kernel/qapplication_p.h
index 34395c9..1424611 100644
--- a/src/gui/kernel/qapplication_p.h
+++ b/src/gui/kernel/qapplication_p.h
@@ -435,7 +435,6 @@ public:
QMap<QString, int> grabbedGestures;
QHash<int, QWidget *> widgetForTouchPointId;
- QMap<QWidget *, QList<QTouchEvent::TouchPoint *> > widgetCurrentTouchPoints;
static void updateTouchPointsForWidget(QWidget *widget, QTouchEvent *touchEvent);
#if defined(Q_WS_WIN)
@@ -448,12 +447,9 @@ public:
QList<QTouchEvent::TouchPoint *> appCurrentTouchPoints;
void initializeMultitouch();
- static QTouchEvent::TouchPoint *findClosestTouchPoint(const QList<QTouchEvent::TouchPoint *> &activeTouchPoints,
- const QPointF &screenPos);
- void appendTouchPoint(QTouchEvent::TouchPoint *touchPoint,
- QList<QTouchEvent::TouchPoint *> *currentTouchPoints);
- void removeTouchPoint(QTouchEvent::TouchPoint *touchPoint,
- QList<QTouchEvent::TouchPoint *> *currentTouchPoints);
+ QTouchEvent::TouchPoint *findClosestTouchPoint(const QPointF &screenPos);
+ void appendTouchPoint(QTouchEvent::TouchPoint *touchPoint);
+ void removeTouchPoint(QTouchEvent::TouchPoint *touchPoint);
bool translateTouchEvent(const MSG &msg);
#endif