+2011-09-30 Zeno Albisser <zeno.albisser@nokia.com>
+
+ [Qt][WK2] Change WebKitTestRunner to use QMouseEvents instead of QGraphicsSceneMouseEvents
+ https://bugs.webkit.org/show_bug.cgi?id=69145
+
+ This is a follow up to https://bugs.webkit.org/show_bug.cgi?id=69105
+ Due to refactorings in Qt5, QMouseEvent now supports floating point coordinates
+ and is perfectly suitable for SceneGraph as well. GraphicsScene events
+ will not be available in QtGui anymore in future. Therefore we also have to change
+ QtWebKit to use QMouseEvents instead of QGraphicsSceneMouseEvents.
+
+ Reviewed by Chang Shu.
+
+ * WebKitTestRunner/EventSenderProxy.h:
+ * WebKitTestRunner/qt/EventSenderProxyQt.cpp:
+ (WTR::EventSenderProxy::createMouseEvent):
+ (WTR::EventSenderProxy::mouseDown):
+ (WTR::EventSenderProxy::mouseUp):
+ (WTR::EventSenderProxy::mouseMoveTo):
+
2011-09-30 James Robinson <jamesr@chromium.org>
[chromium] Add WebKit API for sending input events to the compositor thread
m_clickButton = button;
}
-QGraphicsSceneMouseEvent* EventSenderProxy::createGraphicsSceneMouseEvent(QEvent::Type type, const QPoint& pos, const QPoint& screenPos, Qt::MouseButton button, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers)
-{
- QGraphicsSceneMouseEvent* event;
- event = new QGraphicsSceneMouseEvent(type);
- event->setPos(pos);
- event->setScreenPos(screenPos);
- event->setButton(button);
- event->setButtons(buttons);
- event->setModifiers(modifiers);
-
- return event;
-}
-
void EventSenderProxy::mouseDown(unsigned button, WKEventModifiers wkModifiers)
{
Qt::KeyboardModifiers modifiers = getModifiers(wkModifiers);
m_mouseButtons |= mouseButton;
QPoint mousePos(m_position.x, m_position.y);
- QGraphicsSceneMouseEvent* event = createGraphicsSceneMouseEvent((m_clickCount == 2) ? QEvent::GraphicsSceneMouseDoubleClick : QEvent::GraphicsSceneMousePress,
+ QMouseEvent* event = new QMouseEvent((m_clickCount == 2) ? QEvent::MouseButtonDblClick : QEvent::MouseButtonPress,
mousePos, mousePos, mouseButton, m_mouseButtons, modifiers);
sendOrQueueEvent(event);
m_mouseButtons &= ~mouseButton;
QPoint mousePos(m_position.x, m_position.y);
- QGraphicsSceneMouseEvent* event = createGraphicsSceneMouseEvent(QEvent::GraphicsSceneMouseRelease,
+ QMouseEvent* event = new QMouseEvent(QEvent::MouseButtonRelease,
mousePos, mousePos, mouseButton, m_mouseButtons, Qt::NoModifier);
sendOrQueueEvent(event);
m_position.y = y;
QPoint mousePos(m_position.x, m_position.y);
- QGraphicsSceneMouseEvent* event = createGraphicsSceneMouseEvent(QEvent::GraphicsSceneMouseMove,
+ QMouseEvent* event = new QMouseEvent(QEvent::MouseMove,
mousePos, mousePos, Qt::NoButton, m_mouseButtons, Qt::NoModifier);
sendOrQueueEvent(event);