diff options
author | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2014-01-14 18:06:27 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-01-14 20:04:43 +0100 |
commit | 679ea13790f217df0bb240fb80fd4ee5208e2084 (patch) | |
tree | 06008436e14fea1c0ac367af6f0bdd79ded967be /tests/auto | |
parent | 8e17ab6dc6c51339e824f2f1a2cbdf445b482887 (diff) | |
parent | cc0eb9c2aa9032c6a7bf2ab05d1eb913a09fa4f1 (diff) |
Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev
Diffstat (limited to 'tests/auto')
-rw-r--r-- | tests/auto/quick/qquickflickable/data/pressDelay.qml | 14 | ||||
-rw-r--r-- | tests/auto/quick/qquickflickable/tst_qquickflickable.cpp | 23 |
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)); |