Skip to content

Commit

Permalink
Fix hover and enter event constructor
Browse files Browse the repository at this point in the history
  • Loading branch information
SineStriker committed Aug 17, 2023
1 parent 9265735 commit 4dafbb1
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions src/core/utils.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -648,24 +648,24 @@ void Utils::emulateQtMouseEvent(const QObject *target, const QWindow *window, co
switch (buttonState) {
case ButtonState::Normal: {
QEvent leaveEvent(QEvent::Leave);
QHoverEvent hoverLeaveEvent(QEvent::HoverLeave, scenePos, globalPos, oldPos, modifiers);
QHoverEvent hoverLeaveEvent(QEvent::HoverLeave, localPos, oldPos, modifiers);
QCoreApplication::sendEvent(object, &leaveEvent);
QCoreApplication::sendEvent(object, &hoverLeaveEvent);
} break;
case ButtonState::Hovered: {
const auto receiver = (target->isWidgetType() ? object : static_cast<QObject *>(candidateObject));
if (underMouse) {
QMouseEvent mouseMoveEvent(QEvent::MouseMove, localPos, scenePos, globalPos, Qt::NoButton, buttons, modifiers);
QHoverEvent hoverMoveEvent(QEvent::HoverMove, scenePos, globalPos, oldPos, modifiers);
QHoverEvent hoverMoveEvent(QEvent::HoverMove, localPos, oldPos, modifiers);
QCoreApplication::sendEvent(receiver, &mouseMoveEvent);
QCoreApplication::sendEvent(receiver, &hoverMoveEvent);
} else {
#if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0))
#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
QEnterEvent enterEvent(localPos, scenePos, globalPos);
#else
QEvent enterEvent(QEvent::Enter);
#endif
QHoverEvent hoverEnterEvent(QEvent::HoverEnter, scenePos, globalPos, oldPos, modifiers);
QHoverEvent hoverEnterEvent(QEvent::HoverEnter, localPos, oldPos, modifiers);
QCoreApplication::sendEvent(receiver, &enterEvent);
QCoreApplication::sendEvent(receiver, &hoverEnterEvent);
}
Expand Down

0 comments on commit 4dafbb1

Please sign in to comment.