49QWaylandMouseTracker::QWaylandMouseTracker(QQuickItem *parent)
50 : QQuickItem(*(
new QWaylandMouseTrackerPrivate), parent)
52 Q_D(QWaylandMouseTracker);
53 setFiltersChildMouseEvents(
true);
54 setAcceptHoverEvents(
true);
55 setAcceptedMouseButtons(Qt::AllButtons);
57 setCursor(QCursor(d->cursorPixmap));
72void QWaylandMouseTracker::setWindowSystemCursorEnabled(
bool enable)
74 Q_D(QWaylandMouseTracker);
75 if (d->windowSystemCursorEnabled != enable) {
76 d->windowSystemCursorEnabled = enable;
81 setCursor(QCursor(d->cursorPixmap));
84 emit windowSystemCursorEnabledChanged();
100bool QWaylandMouseTracker::childMouseEventFilter(QQuickItem *item, QEvent *event)
102 Q_D(QWaylandMouseTracker);
103 if (event->type() == QEvent::MouseMove) {
104 QMouseEvent *mouseEvent =
static_cast<QMouseEvent *>(event);
105 d->handleMousePos(mapFromItem(item, mouseEvent->position()));
106 }
else if (event->type() == QEvent::HoverMove) {
107 QHoverEvent *hoverEvent =
static_cast<QHoverEvent *>(event);
108 d->handleMousePos(mapFromItem(item, hoverEvent->position()));