diff options
Diffstat (limited to 'src/widgets/kernel/qwidgetwindow.cpp')
-rw-r--r-- | src/widgets/kernel/qwidgetwindow.cpp | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/src/widgets/kernel/qwidgetwindow.cpp b/src/widgets/kernel/qwidgetwindow.cpp index d8d6eab7b1..ac32c32e12 100644 --- a/src/widgets/kernel/qwidgetwindow.cpp +++ b/src/widgets/kernel/qwidgetwindow.cpp @@ -78,7 +78,7 @@ public: QWindowPrivate::setVisible(visible); } - QWindow *eventReceiver() Q_DECL_OVERRIDE { + QWindow *eventReceiver() override { Q_Q(QWidgetWindow); QWindow *w = q; while (w->parent() && qobject_cast<QWidgetWindow *>(w) && qobject_cast<QWidgetWindow *>(w->parent())) { @@ -87,7 +87,7 @@ public: return w; } - void clearFocusObject() Q_DECL_OVERRIDE + void clearFocusObject() override { Q_Q(QWidgetWindow); QWidget *widget = q->widget(); @@ -95,7 +95,7 @@ public: widget->focusWidget()->clearFocus(); } - QRectF closestAcceptableGeometry(const QRectF &rect) const Q_DECL_OVERRIDE; + QRectF closestAcceptableGeometry(const QRectF &rect) const override; #if QT_CONFIG(opengl) QOpenGLContext *shareContext() const override; #endif @@ -171,7 +171,7 @@ QObject *QWidgetWindow::focusObject() const { QWidget *windowWidget = m_widget; if (!windowWidget) - return Q_NULLPTR; + return nullptr; // A window can't have a focus object if it's being destroyed. if (QWidgetPrivate::get(windowWidget)->data.in_destructor) @@ -422,7 +422,7 @@ void QWidgetWindow::handleEnterLeaveEvent(QEvent *event) const QEnterEvent *ee = static_cast<QEnterEvent *>(event); QWidget *child = m_widget->childAt(ee->pos()); QWidget *receiver = child ? child : m_widget.data(); - QWidget *leave = Q_NULLPTR; + QWidget *leave = nullptr; if (QApplicationPrivate::inPopupMode() && receiver == m_widget && qt_last_mouse_receiver != m_widget) { // This allows to deliver the leave event to the native widget @@ -529,11 +529,11 @@ void QWidgetWindow::handleMouseEvent(QMouseEvent *event) // Prevent negative mouse position on enter event - this event // should be properly handled in "handleEnterLeaveEvent()". if (receiverMapped.x() >= 0 && receiverMapped.y() >= 0) { - QApplicationPrivate::dispatchEnterLeave(receiver, Q_NULLPTR, event->screenPos()); + QApplicationPrivate::dispatchEnterLeave(receiver, nullptr, event->screenPos()); qt_last_mouse_receiver = receiver; } } else { - QApplicationPrivate::dispatchEnterLeave(Q_NULLPTR, qt_last_mouse_receiver, event->screenPos()); + QApplicationPrivate::dispatchEnterLeave(nullptr, qt_last_mouse_receiver, event->screenPos()); qt_last_mouse_receiver = receiver; receiver = activePopupWidget; } @@ -637,12 +637,9 @@ void QWidgetWindow::handleMouseEvent(QMouseEvent *event) QWidget *receiver = QApplicationPrivate::pickMouseReceiver(m_widget, event->windowPos().toPoint(), &mapped, event->type(), event->buttons(), qt_button_down, widget); - - if (!receiver) { - if (event->type() == QEvent::MouseButtonRelease) - QApplicationPrivate::mouse_buttons &= ~event->button(); + if (!receiver) return; - } + if ((event->type() != QEvent::MouseButtonPress) || !(event->flags().testFlag(Qt::MouseEventCreatedDoubleClick))) { |