summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@theqtcompany.com>2016-04-11 19:23:18 +0200
committerMichal Klocek <michal.klocek@theqtcompany.com>2016-04-21 15:18:17 +0000
commit4ff390203caf278dcee20e1a61402431fd2166c2 (patch)
tree6924ac8439826b1718fe52f51ef1b2da217b0b14
parent334b9ba69e1e662b04a1eea24bcd205f76962307 (diff)
Fix contextMenu handling in examples
Adds missing deleteLater on close Change-Id: Id337856f138e0d38f0c72d3962ccac309d36c73e Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
-rw-r--r--examples/webenginewidgets/demobrowser/webview.cpp7
-rw-r--r--examples/webenginewidgets/simplebrowser/webview.cpp6
2 files changed, 8 insertions, 5 deletions
diff --git a/examples/webenginewidgets/demobrowser/webview.cpp b/examples/webenginewidgets/demobrowser/webview.cpp
index 9feedc0b5..94e872dbf 100644
--- a/examples/webenginewidgets/demobrowser/webview.cpp
+++ b/examples/webenginewidgets/demobrowser/webview.cpp
@@ -363,10 +363,11 @@ void WebView::contextMenuEvent(QContextMenuEvent *event)
if (it != actions.cend()) {
(*it)->setText(tr("Open Link in This Window"));
++it;
- menu->insertAction(*it, page()->action(QWebEnginePage::OpenLinkInNewWindow));
- menu->insertAction(*it, page()->action(QWebEnginePage::OpenLinkInNewTab));
+ QAction *before(it == actions.cend() ? nullptr : *it);
+ menu->insertAction(before, page()->action(QWebEnginePage::OpenLinkInNewWindow));
+ menu->insertAction(before, page()->action(QWebEnginePage::OpenLinkInNewTab));
}
-
+ connect(menu, &QMenu::aboutToHide, menu, &QObject::deleteLater);
menu->popup(event->globalPos());
}
diff --git a/examples/webenginewidgets/simplebrowser/webview.cpp b/examples/webenginewidgets/simplebrowser/webview.cpp
index 1fabcc69f..de93bc0c4 100644
--- a/examples/webenginewidgets/simplebrowser/webview.cpp
+++ b/examples/webenginewidgets/simplebrowser/webview.cpp
@@ -154,9 +154,11 @@ void WebView::contextMenuEvent(QContextMenuEvent *event)
if (it != actions.cend()) {
(*it)->setText(tr("Open Link in This Tab"));
++it;
- menu->insertAction(*it, page()->action(QWebEnginePage::OpenLinkInNewWindow));
- menu->insertAction(*it, page()->action(QWebEnginePage::OpenLinkInNewTab));
+ QAction *before(it == actions.cend() ? nullptr : *it);
+ menu->insertAction(before, page()->action(QWebEnginePage::OpenLinkInNewWindow));
+ menu->insertAction(before, page()->action(QWebEnginePage::OpenLinkInNewTab));
}
+ connect(menu, &QMenu::aboutToHide, menu, &QObject::deleteLater);
menu->popup(event->globalPos());
}