diff options
-rw-r--r-- | src/quick/items/qquickwindow.cpp | 9 | ||||
-rw-r--r-- | tests/auto/quick/touchmouse/tst_touchmouse.cpp | 4 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/quick/items/qquickwindow.cpp b/src/quick/items/qquickwindow.cpp index 8a2471b34f..26d83cfdf5 100644 --- a/src/quick/items/qquickwindow.cpp +++ b/src/quick/items/qquickwindow.cpp @@ -1437,6 +1437,15 @@ bool QQuickWindow::event(QEvent *e) // return in order to avoid the QWindow::event below return d->deliverTouchCancelEvent(static_cast<QTouchEvent*>(e)); break; + case QEvent::Enter: { + QEnterEvent *enter = static_cast<QEnterEvent*>(e); + bool accepted = enter->isAccepted(); + bool delivered = d->deliverHoverEvent(d->contentItem, enter->windowPos(), d->lastMousePosition, + QGuiApplication::keyboardModifiers(), 0L, accepted); + enter->setAccepted(accepted); + return delivered; + } + break; case QEvent::Leave: d->clearHover(); d->lastMousePosition = QPoint(); diff --git a/tests/auto/quick/touchmouse/tst_touchmouse.cpp b/tests/auto/quick/touchmouse/tst_touchmouse.cpp index 0608af7cd4..d2f46dae6d 100644 --- a/tests/auto/quick/touchmouse/tst_touchmouse.cpp +++ b/tests/auto/quick/touchmouse/tst_touchmouse.cpp @@ -1253,8 +1253,12 @@ void tst_TouchMouse::hoverEnabled() // device->setType(QTouchDevice::TouchScreen); // QWindowSystemInterface::registerTouchDevice(device); + // Ensure the cursor is away from the window + QCursor::setPos(0, 0); + QQuickView *window = createView(); window->setSource(testFileUrl("hoverMouseAreas.qml")); + window->setPosition(10, 10); window->show(); window->requestActivate(); |