diff options
author | Kirill Burtsev <kirill.burtsev@qt.io> | 2021-09-10 13:00:36 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-09-11 07:30:24 +0000 |
commit | 857256659a8218f6624d0e8f9a4159e3ddeda14e (patch) | |
tree | 930634ae765cbfcc54d4ae2c08cdbcb35a491e8a /examples | |
parent | 8ee74de6c7c4ef930055bfc1fa239aee8616dd41 (diff) |
Fix disconnect on null old page win Simple Browser example
Eliminates constant warnings from QObject on every new tab create
Change-Id: I93b3a2561a8a99932ea2a8c77cc12ded4a6906e7
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
(cherry picked from commit bfae1b143acb9581ebc9396e0ba7e7e0fe5053d0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'examples')
-rw-r--r-- | examples/webenginewidgets/simplebrowser/webview.cpp | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/examples/webenginewidgets/simplebrowser/webview.cpp b/examples/webenginewidgets/simplebrowser/webview.cpp index 5bd0a5ef4..31be9f34c 100644 --- a/examples/webenginewidgets/simplebrowser/webview.cpp +++ b/examples/webenginewidgets/simplebrowser/webview.cpp @@ -133,17 +133,18 @@ inline QString questionForFeature(QWebEnginePage::Feature feature) void WebView::setPage(WebPage *page) { - WebPage *oldPage = qobject_cast<WebPage *>(QWebEngineView::page()); - disconnect(oldPage, &WebPage::createCertificateErrorDialog, this, - &WebView::handleCertificateError); - disconnect(oldPage, &QWebEnginePage::authenticationRequired, this, - &WebView::handleAuthenticationRequired); - disconnect(oldPage, &QWebEnginePage::featurePermissionRequested, this, - &WebView::handleFeaturePermissionRequested); - disconnect(oldPage, &QWebEnginePage::proxyAuthenticationRequired, this, - &WebView::handleProxyAuthenticationRequired); - disconnect(oldPage, &QWebEnginePage::registerProtocolHandlerRequested, this, - &WebView::handleRegisterProtocolHandlerRequested); + if (auto oldPage = qobject_cast<WebPage *>(QWebEngineView::page())) { + disconnect(oldPage, &WebPage::createCertificateErrorDialog, this, + &WebView::handleCertificateError); + disconnect(oldPage, &QWebEnginePage::authenticationRequired, this, + &WebView::handleAuthenticationRequired); + disconnect(oldPage, &QWebEnginePage::featurePermissionRequested, this, + &WebView::handleFeaturePermissionRequested); + disconnect(oldPage, &QWebEnginePage::proxyAuthenticationRequired, this, + &WebView::handleProxyAuthenticationRequired); + disconnect(oldPage, &QWebEnginePage::registerProtocolHandlerRequested, this, + &WebView::handleRegisterProtocolHandlerRequested); + } createWebActionTrigger(page,QWebEnginePage::Forward); createWebActionTrigger(page,QWebEnginePage::Back); createWebActionTrigger(page,QWebEnginePage::Reload); |