summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2014-01-14 18:06:27 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-01-14 20:04:43 +0100
commit679ea13790f217df0bb240fb80fd4ee5208e2084 (patch)
tree06008436e14fea1c0ac367af6f0bdd79ded967be /tests
parent8e17ab6dc6c51339e824f2f1a2cbdf445b482887 (diff)
parentcc0eb9c2aa9032c6a7bf2ab05d1eb913a09fa4f1 (diff)
Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/quick/qquickflickable/data/pressDelay.qml14
-rw-r--r--tests/auto/quick/qquickflickable/tst_qquickflickable.cpp23
2 files changed, 37 insertions, 0 deletions
diff --git a/tests/auto/quick/qquickflickable/data/pressDelay.qml b/tests/auto/quick/qquickflickable/data/pressDelay.qml
index 18a5840504..a69c4af6de 100644
--- a/tests/auto/quick/qquickflickable/data/pressDelay.qml
+++ b/tests/auto/quick/qquickflickable/data/pressDelay.qml
@@ -8,6 +8,11 @@ Flickable {
contentHeight: 400
pressDelay: 100
+ property real pressX
+ property real pressY
+ property real releaseX
+ property real releaseY
+
MouseArea {
id: ma
objectName: "mouseArea"
@@ -16,6 +21,15 @@ Flickable {
width: 240
height: 100
+ onPressed: {
+ pressX = mouse.x
+ pressY = mouse.y
+ }
+ onReleased: {
+ releaseX = mouse.x
+ releaseY = mouse.y
+ }
+
Rectangle {
anchors.fill: parent
color: parent.pressed ? 'blue' : 'green'
diff --git a/tests/auto/quick/qquickflickable/tst_qquickflickable.cpp b/tests/auto/quick/qquickflickable/tst_qquickflickable.cpp
index 794f9a8af6..86321c775e 100644
--- a/tests/auto/quick/qquickflickable/tst_qquickflickable.cpp
+++ b/tests/auto/quick/qquickflickable/tst_qquickflickable.cpp
@@ -412,6 +412,29 @@ void tst_qquickflickable::pressDelay()
QTest::mouseRelease(window.data(), Qt::LeftButton, 0, QPoint(150, 150));
QCOMPARE(clickedSpy.count(),1);
+ // Press and release position should match
+ QCOMPARE(flickable->property("pressX").toReal(), flickable->property("releaseX").toReal());
+ QCOMPARE(flickable->property("pressY").toReal(), flickable->property("releaseY").toReal());
+
+
+ // Test a quick tap within the pressDelay timeout
+ clickedSpy.clear();
+ QTest::mousePress(window.data(), Qt::LeftButton, 0, QPoint(180, 180));
+
+ // The press should not occur immediately
+ QVERIFY(mouseArea->property("pressed").toBool() == false);
+
+ QCOMPARE(clickedSpy.count(),0);
+
+ // On release the press, release and clicked signal should be emitted
+ QTest::mouseRelease(window.data(), Qt::LeftButton, 0, QPoint(180, 180));
+ QCOMPARE(clickedSpy.count(),1);
+
+ // Press and release position should match
+ QCOMPARE(flickable->property("pressX").toReal(), flickable->property("releaseX").toReal());
+ QCOMPARE(flickable->property("pressY").toReal(), flickable->property("releaseY").toReal());
+
+
// QTBUG-31168
QTest::mousePress(window.data(), Qt::LeftButton, 0, QPoint(150, 110));