diff options
author | Michal Klocek <michal.klocek@qt.io> | 2020-10-21 13:00:40 +0200 |
---|---|---|
committer | Michal Klocek <michal.klocek@qt.io> | 2020-11-23 12:54:44 +0100 |
commit | 1358c8b7526adf48e10185271c7b1cc685c48bcd (patch) | |
tree | afebf42755d89a19cec085b584e1503b2e43821e /src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp | |
parent | af5db38a7e43226b5f6fc4624ab8edd4d23a8137 (diff) |
Swap widgetCahgned with adapterClientChanged
This drops dependency on view delegate implementations
in web contents adapter client.
Change-Id: I73a0dda0a790b7afe3fa774b53db9aa263d48ef9
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp')
-rw-r--r-- | src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp index 319883d2c..a2e5a5e0e 100644 --- a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp +++ b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp @@ -465,6 +465,14 @@ void RenderWidgetHostViewQtDelegateWidget::onWindowPosChanged() m_client->visualPropertiesChanged(); } +void RenderWidgetHostViewQtDelegateWidget::adapterClientChanged(WebContentsAdapterClient *client) +{ + QWebEnginePage *page = static_cast<QWebEnginePagePrivate *>(client)->q_func(); + QWebEngineViewPrivate::bindPageAndWidget(page, this); + connect(page, &QWebEnginePage::_q_aboutToDelete, this, + [this]() { QWebEngineViewPrivate::bindPageAndWidget(nullptr, this); }); +} + #if QT_CONFIG(accessibility) RenderWidgetHostViewQtDelegateWidgetAccessible::RenderWidgetHostViewQtDelegateWidgetAccessible(RenderWidgetHostViewQtDelegateWidget *o, QWebEngineView *view) : QAccessibleWidget(o) |