summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMatthew Cattell <matthew.cattell@nokia.com>2011-09-08 15:37:59 +0200
committerSamuel Rødal <samuel.rodal@nokia.com>2011-09-08 15:47:38 +0200
commit1762bf3394219db3a7a9cc99306f4111e6cb8492 (patch)
treecac436788393f818d39ce1488dab3626fb2b1686 /src
parent78bb937e154f90afc24d4266705d9331a181fdee (diff)
fixed mouseMove
Change-Id: I95dd22ed3216f5ad169393f535e27b1b397c8433 Reviewed-on: http://codereview.qt-project.org/4462 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Diffstat (limited to 'src')
-rw-r--r--src/testlib/qtestmouse.h16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/testlib/qtestmouse.h b/src/testlib/qtestmouse.h
index f6b2dd2bbf..16bc0baf4f 100644
--- a/src/testlib/qtestmouse.h
+++ b/src/testlib/qtestmouse.h
@@ -125,12 +125,15 @@ namespace QTest
}
}
+
static void mouseEvent(MouseAction action, QWindow *window, Qt::MouseButton button,
Qt::KeyboardModifiers stateKey, QPoint pos, int delay=-1)
{
QTEST_ASSERT(window);
extern int Q_TESTLIB_EXPORT defaultMouseDelay();
+ static Qt::MouseButton lastButton = Qt::NoButton;
+
if (delay == -1 || delay < defaultMouseDelay())
delay = defaultMouseDelay();
if (delay > 0)
@@ -153,22 +156,25 @@ namespace QTest
switch (action)
{
case MousePress:
- QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),Qt::LeftButton);
+ QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),button);
+ lastButton = button;
break;
case MouseRelease:
QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),Qt::NoButton);
+ lastButton = Qt::NoButton;
break;
case MouseDClick:
- QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),Qt::LeftButton);
+ QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),button);
qWait(10);
QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),Qt::NoButton);
qWait(20);
- QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),Qt::LeftButton);
+ QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),button);
qWait(10);
QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),Qt::NoButton);
break;
case MouseMove:
- QCursor::setPos(window->mapToGlobal(pos));
+ QWindowSystemInterface::handleMouseEvent(window,pos,window->mapToGlobal(pos),lastButton);
+ //QCursor::setPos(window->mapToGlobal(pos));
#ifdef QT_MAC_USE_COCOA
QTest::qWait(20);
#else
@@ -208,7 +214,7 @@ namespace QTest
inline void mouseDClick(QWindow *window, Qt::MouseButton button, Qt::KeyboardModifiers stateKey = 0,
QPoint pos = QPoint(), int delay=-1)
{ mouseEvent(MouseDClick, window, button, stateKey, pos, delay); }
- inline void mouseMove(QWindow *window, QPoint pos = QPoint(), int delay=-1)
+ inline void mouseMove(QWindow *window, QPoint pos = QPoint(), int delay= -1)
{ mouseEvent(MouseMove, window, Qt::NoButton, 0, pos, delay); }
}