summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Moe Gustavsen <richard.gustavsen@nokia.com>2011-01-28 08:19:58 (GMT)
committerRichard Moe Gustavsen <richard.gustavsen@nokia.com>2011-01-28 08:19:58 (GMT)
commitc9d26aa99c8f2279b54e6bb7ea68f30608e7e02a (patch)
treea46304a666207ac14f7c95a3a8df49aed0aa6c94
parent48ca1ffefb4accb9578f1efffbcfff354f0d9976 (diff)
downloadQt-c9d26aa99c8f2279b54e6bb7ea68f30608e7e02a.zip
Qt-c9d26aa99c8f2279b54e6bb7ea68f30608e7e02a.tar.gz
Qt-c9d26aa99c8f2279b54e6bb7ea68f30608e7e02a.tar.bz2
Cocoa: fix qgraphicsview autotest
Moving the cursor to the corner of the desktop (0, 0) will typically trigger things to happend in the OS, at least on Mac (spaces, synergy etc). So I changed those tests to move it to (1, 1) instead. The reason to move it to (0, 0) was just to get the mouse away from the window anyway. And second, it takes some time after using QCursor::setPos on Mac before the events from the move actually arrive. And many tests that use this function relies on this. So I introduces a little delay. This alone will fix a couble of tests.
-rw-r--r--src/testlib/qtestmouse.h4
-rw-r--r--tests/auto/qgraphicsview/tst_qgraphicsview.cpp4
2 files changed, 6 insertions, 2 deletions
diff --git a/src/testlib/qtestmouse.h b/src/testlib/qtestmouse.h
index 35752b0..5abb019 100644
--- a/src/testlib/qtestmouse.h
+++ b/src/testlib/qtestmouse.h
@@ -107,7 +107,11 @@ namespace QTest
break;
case MouseMove:
QCursor::setPos(widget->mapToGlobal(pos));
+#ifdef QT_MAC_USE_COCOA
+ QTest::qWait(20);
+#else
qApp->processEvents();
+#endif
return;
default:
QTEST_ASSERT(false);
diff --git a/tests/auto/qgraphicsview/tst_qgraphicsview.cpp b/tests/auto/qgraphicsview/tst_qgraphicsview.cpp
index aaff51e..f8fc5d0 100644
--- a/tests/auto/qgraphicsview/tst_qgraphicsview.cpp
+++ b/tests/auto/qgraphicsview/tst_qgraphicsview.cpp
@@ -2967,7 +2967,7 @@ protected:
void tst_QGraphicsView::task186827_deleteReplayedItem()
{
// make sure the mouse is not over the window, causing spontaneous mouse moves
- QCursor::setPos(0, 0);
+ QCursor::setPos(1, 1);
QGraphicsScene scene;
scene.addRect(0, 0, 50, 50);
@@ -4504,7 +4504,7 @@ void tst_QGraphicsView::hoverLeave()
QVERIFY(item->receivedEnterEvent);
QCOMPARE(item->enterWidget, view.viewport());
- QCursor::setPos(0,0);
+ QCursor::setPos(1,1);
QTest::qWait(200);
QVERIFY(item->receivedLeaveEvent);
QCOMPARE(item->leaveWidget, view.viewport());