diff --git a/src/webenginewidgets/api/qwebengineview.cpp b/src/webenginewidgets/api/qwebengineview.cpp index c8fe9c38315bc2e43e041b3d8595444edcc51d09..3e6efafbdfb1f5ae8a8718e722953dba0f5d2c50 100644 --- a/src/webenginewidgets/api/qwebengineview.cpp +++ b/src/webenginewidgets/api/qwebengineview.cpp @@ -89,6 +89,7 @@ void QWebEngineViewPrivate::bind(QWebEngineView *view, QWebEnginePage *page) QWebEngineViewPrivate::QWebEngineViewPrivate() : QWidgetPrivate(QObjectPrivateVersion) , page(0) + , m_pendingContextMenuEvent(false) { } @@ -221,10 +222,12 @@ void QWebEngineView::setZoomFactor(qreal factor) bool QWebEngineView::event(QEvent *ev) { + Q_D(QWebEngineView); // We swallow spontaneous contextMenu events and synthethize those back later on when we get the // HandleContextMenu callback from chromium if (ev->type() == QEvent::ContextMenu) { ev->accept(); + d->m_pendingContextMenuEvent = true; return true; } return QWidget::event(ev);