summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@qt.io>2017-09-08 12:17:20 +0200
committerJoerg Bornemann <joerg.bornemann@qt.io>2017-09-11 09:10:31 +0000
commite409cfca1765aad5f6cc09c0e0ebd019dd5b37e2 (patch)
tree62d51e269ebdb23cdb55e88c514e866e355c69be
parentf6dc11e9b589ae80a6665424b94c5e23567ea9d6 (diff)
Remove QWebEngineViewPrivate::m_pendingContextMenuEvent
This flag was set in QWebEngineView::contextMenuEvent and checked in QWebEnginePage::contextMenuRequested. The latter would bail out if the flag was not set. When the user pressed Shift-F10, the key event was received by RenderWidgetHostViewQtDelegateWidget::event and forwarded to Chromium. Blink's default event handler invoked the context menu, and our callback QWebEnginePage::contextMenuRequested was called. But nothing happened, because m_pendingContextMenuEvent has never been set. There is no reason to have this flag. React on every context menu request just like in the QtQuick implementation. Now pressing Shift-F10 invokes the context menu on web pages. Task-number: QTBUG-58306 Change-Id: I2db1b17604e5521e44613297120a964cc4e4d544 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
-rw-r--r--src/webenginewidgets/api/qwebenginepage.cpp3
-rw-r--r--src/webenginewidgets/api/qwebengineview.cpp3
-rw-r--r--src/webenginewidgets/api/qwebengineview_p.h1
3 files changed, 1 insertions, 6 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp
index 51456128f..70f5984c7 100644
--- a/src/webenginewidgets/api/qwebenginepage.cpp
+++ b/src/webenginewidgets/api/qwebenginepage.cpp
@@ -1397,7 +1397,7 @@ void QWebEnginePagePrivate::wasHidden()
bool QWebEnginePagePrivate::contextMenuRequested(const WebEngineContextMenuData &data)
{
- if (!view || !view->d_func()->m_pendingContextMenuEvent)
+ if (!view)
return false;
contextData.reset();
@@ -1423,7 +1423,6 @@ bool QWebEnginePagePrivate::contextMenuRequested(const WebEngineContextMenuData
event.ignore();
return false;
}
- view->d_func()->m_pendingContextMenuEvent = false;
return true;
}
diff --git a/src/webenginewidgets/api/qwebengineview.cpp b/src/webenginewidgets/api/qwebengineview.cpp
index 56948bb18..0037f7e50 100644
--- a/src/webenginewidgets/api/qwebengineview.cpp
+++ b/src/webenginewidgets/api/qwebengineview.cpp
@@ -106,7 +106,6 @@ static QAccessibleInterface *webAccessibleFactory(const QString &, QObject *obje
QWebEngineViewPrivate::QWebEngineViewPrivate()
: page(0)
- , m_pendingContextMenuEvent(false)
, m_dragEntered(false)
{
#ifndef QT_NO_ACCESSIBILITY
@@ -316,12 +315,10 @@ 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);
diff --git a/src/webenginewidgets/api/qwebengineview_p.h b/src/webenginewidgets/api/qwebengineview_p.h
index 45b3e266e..f3a37225b 100644
--- a/src/webenginewidgets/api/qwebengineview_p.h
+++ b/src/webenginewidgets/api/qwebengineview_p.h
@@ -70,7 +70,6 @@ public:
QWebEngineViewPrivate();
QWebEnginePage *page;
- bool m_pendingContextMenuEvent;
bool m_dragEntered;
};