From cf7c36aecf7a099012e84c450ef5d8d59d17957f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BCri=20Valdmann?= Date: Thu, 3 Aug 2017 11:39:23 +0200 Subject: Stop forwarding HoverEnter and HoverLeave QEvents With QtWidgets the QHoverEvent handling is slightly incorrect (HoverEnter and HoverLeave triggering Q_ASSERT), quite unnecessary (Chromium works fine with just MouseMove events when mouse tracking is enabled), and mostly unused (QHoverEvents are only delivered if the WA_Hover widget attribute is set, which it usually is not). QtQuick however does not have the equivalent of QtWidgets mouse tracking, so to get mouse movement information into Chromium we have to use HoverMove QEvents. But the HoverEnter and HoverLeave QEvents are not used or useful for QtQuick either. Task-number: QTBUG-62200 Change-Id: I333de2b6adcc24544935d36645036aedb07e51ac Reviewed-by: Alexandru Croitor --- src/core/render_widget_host_view_qt.cpp | 2 -- src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp | 3 +++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/core/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp index dd372b72f..958ff91e1 100644 --- a/src/core/render_widget_host_view_qt.cpp +++ b/src/core/render_widget_host_view_qt.cpp @@ -944,8 +944,6 @@ bool RenderWidgetHostViewQt::forwardEvent(QEvent *event) case QEvent::NativeGesture: handleGestureEvent(static_cast(event)); break; - case QEvent::HoverEnter: - case QEvent::HoverLeave: case QEvent::HoverMove: handleHoverEvent(static_cast(event)); break; diff --git a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp index d02191b23..6dd612999 100644 --- a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp +++ b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp @@ -450,6 +450,9 @@ bool RenderWidgetHostViewQtDelegateWidget::event(QEvent *event) case QEvent::DragLeave: case QEvent::DragMove: case QEvent::Drop: + case QEvent::HoverEnter: + case QEvent::HoverLeave: + case QEvent::HoverMove: // Let the parent handle these events. return false; default: -- cgit v1.2.3