summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/kernel/qtouchevent
diff options
context:
space:
mode:
authorShawn Rutledge <shawn.rutledge@qt.io>2020-08-06 17:28:06 +0200
committerShawn Rutledge <shawn.rutledge@qt.io>2020-08-24 13:50:55 +0200
commit38806273e567a39bd7ca4ced5e6e38dfd7426f27 (patch)
treef2336bf4de830b806903b347238d1c7c6054f3b5 /tests/auto/gui/kernel/qtouchevent
parent0c52e600b3b5c83d128e6b4068d523829357fef0 (diff)
Remove QEventPoint::event() in favor of device()
event()->device() was the most common use case anyway. The idea that the "parent" of a QEventPoint is the QPointerEvent interferes with the ability to copy and move event objects: the parent pointers are dangling unless we use the QPointerEvent subclass destructors to set the points' parents to null. Since there is no move constructor, even returning a QEventPoint from a function by value results in destroying the temporary instance and copying it to the caller's space. So the parent pointer is often useless, unless we do even more work to maintain it when the event moves. If we optimize to avoid copying QEventPoints too much (and perhaps enable exposing _mutable_ points to QML) by storing reusable instances in QPointingDevice (which is the current plan), then the actual parent will no longer be the event. Events are usually stack-allocated, thus temporary and intended to be movable. Change-Id: I24b648dcc046fc79d2401c781f1fda6cb00f47b0 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'tests/auto/gui/kernel/qtouchevent')
-rw-r--r--tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp b/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp
index d3d8eba34d..0b5de83018 100644
--- a/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp
+++ b/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp
@@ -79,7 +79,7 @@ public:
seenTouchBegin = !seenTouchBegin && !seenTouchUpdate && !seenTouchEnd;
auto touchEvent = static_cast<QTouchEvent *>(event);
touchBeginPoints = touchEvent->touchPoints();
- Q_ASSERT(touchBeginPoints.first().event() == event);
+ Q_ASSERT(touchBeginPoints.first().device() == touchEvent->pointingDevice());
for (const QEventPoint &pt : touchEvent->touchPoints())
lastNormalizedPositions << pt.normalizedPos();
timestamp = touchEvent->timestamp();