diff options
author | Michael Bruning <michael.bruning@qt.io> | 2016-06-09 12:58:29 +0200 |
---|---|---|
committer | Michael BrĂ¼ning <michael.bruning@qt.io> | 2016-06-09 12:41:22 +0000 |
commit | c4fc323d0771e24ae726065cdce9eafef2c09c41 (patch) | |
tree | 2822e13fee2623ade795b6a6936adc01d27f3d03 /src/webenginewidgets/api/qwebenginepage.cpp | |
parent | 5e3250a24a8cde71de085754922aa6708c036237 (diff) |
Also initialize context data if the menu policy is CustomContextMenu.
It does contain valid data and some users seem to build upon the
standard context menu.
Also, return early with a nullptr from createStandardContextMenu when
the context menu data d ptr is null.
Task-number: QTBUG-53952
Change-Id: Ib30e85f10e3ae681527210a9e8554f5a21dba7ae
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Diffstat (limited to 'src/webenginewidgets/api/qwebenginepage.cpp')
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index 04b8a2b6f..3f11e5aef 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -1143,6 +1143,7 @@ bool QWebEnginePagePrivate::contextMenuRequested(const WebEngineContextMenuData view->contextMenuEvent(&event); break; case Qt::CustomContextMenu: + contextData = data; Q_EMIT view->customContextMenuRequested(data.pos); break; case Qt::ActionsContextMenu: @@ -1281,6 +1282,9 @@ bool QWebEnginePagePrivate::isEnabled() const QMenu *QWebEnginePage::createStandardContextMenu() { Q_D(QWebEnginePage); + if (!d->contextData.d) + return nullptr; + QMenu *menu = new QMenu(d->view); QAction *action = 0; const WebEngineContextMenuData &contextMenuData = *d->contextData.d; |