aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickmousearea.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/quick/items/qquickmousearea.cpp')
-rw-r--r--src/quick/items/qquickmousearea.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/quick/items/qquickmousearea.cpp b/src/quick/items/qquickmousearea.cpp
index f54858e4eb..59615464c8 100644
--- a/src/quick/items/qquickmousearea.cpp
+++ b/src/quick/items/qquickmousearea.cpp
@@ -688,11 +688,17 @@ void QQuickMouseArea::mouseMoveEvent(QMouseEvent *event)
return;
}
- d->saveEvent(event);
-
// ### we should skip this if these signals aren't used
// ### can GV handle this for us?
- setHovered(contains(d->lastPos));
+ setHovered(contains(event->localPos()));
+
+ if ((event->buttons() & acceptedMouseButtons()) == 0) {
+ QQuickItem::mouseMoveEvent(event);
+ return;
+ }
+
+ d->saveEvent(event);
+
#if QT_CONFIG(quick_draganddrop)
if (d->drag && d->drag->target()) {