summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/webenginewidgets/api')
-rw-r--r--src/webenginewidgets/api/qwebenginepage.cpp2
-rw-r--r--src/webenginewidgets/api/qwebengineview.cpp4
2 files changed, 6 insertions, 0 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp
index 0178c1118..74a1692b2 100644
--- a/src/webenginewidgets/api/qwebenginepage.cpp
+++ b/src/webenginewidgets/api/qwebenginepage.cpp
@@ -207,6 +207,8 @@ QWebEnginePage::QWebEnginePage(QObject* parent)
QWebEnginePage::~QWebEnginePage()
{
+ Q_D(QWebEnginePage);
+ QWebEngineViewPrivate::bind(d->view, 0);
}
QWebEngineHistory *QWebEnginePage::history() const
diff --git a/src/webenginewidgets/api/qwebengineview.cpp b/src/webenginewidgets/api/qwebengineview.cpp
index 4dea036b1..054925e83 100644
--- a/src/webenginewidgets/api/qwebengineview.cpp
+++ b/src/webenginewidgets/api/qwebengineview.cpp
@@ -43,6 +43,7 @@
#include "qwebengineview_p.h"
#include "qwebenginepage_p.h"
+#include "web_contents_adapter.h"
#include <QAction>
#include <QMenu>
@@ -63,6 +64,7 @@ void QWebEngineViewPrivate::bind(QWebEngineView *view, QWebEnginePage *page)
oldView->d_func()->page = 0;
}
page->d_func()->view = view;
+ page->d_func()->adapter->reattachRWHV();
}
if (view) {
@@ -98,6 +100,8 @@ QWebEngineView::QWebEngineView(QWidget *parent)
QWebEngineView::~QWebEngineView()
{
+ Q_D(QWebEngineView);
+ QWebEngineViewPrivate::bind(0, d->page);
}
QWebEnginePage* QWebEngineView::page() const