diff options
Diffstat (limited to 'src/core/renderer_host')
-rw-r--r-- | src/core/renderer_host/web_channel_ipc_transport_host.cpp | 8 | ||||
-rw-r--r-- | src/core/renderer_host/web_channel_ipc_transport_host.h | 8 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/core/renderer_host/web_channel_ipc_transport_host.cpp b/src/core/renderer_host/web_channel_ipc_transport_host.cpp index 59f5808ec..fbf4cb9dd 100644 --- a/src/core/renderer_host/web_channel_ipc_transport_host.cpp +++ b/src/core/renderer_host/web_channel_ipc_transport_host.cpp @@ -146,6 +146,14 @@ void WebChannelIPCTransportHost::RenderFrameDeleted(content::RenderFrameHost *rf m_renderFrames.erase(rfh); } +void WebChannelIPCTransportHost::BindReceiver( + mojo::PendingAssociatedReceiver<qtwebchannel::mojom::WebChannelTransportHost> receiver, + content::RenderFrameHost *rfh) +{ + m_receiver.Bind(rfh, std::move(receiver)); +} + + const mojo::AssociatedRemote<qtwebchannel::mojom::WebChannelTransportRender> & WebChannelIPCTransportHost::GetWebChannelIPCTransportRemote(content::RenderFrameHost *rfh) { diff --git a/src/core/renderer_host/web_channel_ipc_transport_host.h b/src/core/renderer_host/web_channel_ipc_transport_host.h index 794238667..846a4da3d 100644 --- a/src/core/renderer_host/web_channel_ipc_transport_host.h +++ b/src/core/renderer_host/web_channel_ipc_transport_host.h @@ -42,8 +42,8 @@ #include "qtwebenginecoreglobal.h" +#include "content/public/browser/render_frame_host_receiver_set.h" #include "content/public/browser/web_contents_observer.h" -#include "content/public/browser/web_contents_receiver_set.h" #include "qtwebengine/browser/qtwebchannel.mojom.h" #include <QWebChannelAbstractTransport> @@ -68,6 +68,10 @@ public: // QWebChannelAbstractTransport void sendMessage(const QJsonObject &message) override; + void BindReceiver( + mojo::PendingAssociatedReceiver<qtwebchannel::mojom::WebChannelTransportHost> receiver, + content::RenderFrameHost *rfh); + private: void setWorldId(content::RenderFrameHost *frame, uint32_t worldId); void resetWorldId(); @@ -85,7 +89,7 @@ private: // Empty only during construction/destruction. Synchronized to all the // WebChannelIPCTransports/RenderFrames in the observed WebContents. uint32_t m_worldId; - content::WebContentsFrameReceiverSet<qtwebchannel::mojom::WebChannelTransportHost> m_receiver; + content::RenderFrameHostReceiverSet<qtwebchannel::mojom::WebChannelTransportHost> m_receiver; std::map<content::RenderFrameHost *, mojo::AssociatedRemote<qtwebchannel::mojom::WebChannelTransportRender>> m_renderFrames; |