diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2021-02-15 14:57:23 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2021-02-17 09:12:12 +0100 |
commit | cd12379d43f8c2df14b19ebced316aa94b3f6043 (patch) | |
tree | f8ff1ac93a1a5502e60c243c32c54f80b1bd332d /src/core/renderer | |
parent | 4e6e907001d4cf0833465407f8a0fa68e6ce564b (diff) | |
parent | 4c94370394ccf1e00233669df01599cb6141a5dc (diff) |
Merge remote-tracking branch 'origin/5.15' into dev
Change-Id: Idee0142b0e33fdf8ca663f1ef1bcd8b932985043
Diffstat (limited to 'src/core/renderer')
-rw-r--r-- | src/core/renderer/content_renderer_client_qt.cpp | 24 | ||||
-rw-r--r-- | src/core/renderer/content_renderer_client_qt.h | 12 |
2 files changed, 36 insertions, 0 deletions
diff --git a/src/core/renderer/content_renderer_client_qt.cpp b/src/core/renderer/content_renderer_client_qt.cpp index 0cff31ff5..86cc5d52a 100644 --- a/src/core/renderer/content_renderer_client_qt.cpp +++ b/src/core/renderer/content_renderer_client_qt.cpp @@ -112,6 +112,10 @@ #include "third_party/widevine/cdm/widevine_cdm_common.h" #endif +#if QT_CONFIG(webengine_webrtc) && QT_CONFIG(webengine_extensions) +#include "chrome/renderer/media/webrtc_logging_agent_impl.h" +#endif + namespace QtWebEngineCore { static const char kHttpErrorDomain[] = "http"; @@ -182,6 +186,15 @@ void ContentRendererClientQt::ExposeInterfacesToBrowser(mojo::BinderMap* binders }, this), base::SequencedTaskRunnerHandle::Get()); #endif + +#if QT_CONFIG(webengine_webrtc) && QT_CONFIG(webengine_extensions) + binders->Add(base::BindRepeating( + [](ContentRendererClientQt *client, + mojo::PendingReceiver<chrome::mojom::WebRtcLoggingAgent> receiver) { + client->GetWebRtcLoggingAgent()->AddReceiver(std::move(receiver)); + }, this), + base::SequencedTaskRunnerHandle::Get()); +#endif } void ContentRendererClientQt::RenderFrameCreated(content::RenderFrame *render_frame) @@ -366,6 +379,17 @@ blink::WebPlugin* ContentRendererClientQt::CreatePlugin(content::RenderFrame* re } #endif //BUILDFLAG(ENABLE_PLUGINS) +#if QT_CONFIG(webengine_webrtc) && QT_CONFIG(webengine_extensions) +chrome::WebRtcLoggingAgentImpl *ContentRendererClientQt::GetWebRtcLoggingAgent() +{ + if (!m_webrtcLoggingAgentImpl) { + m_webrtcLoggingAgentImpl = std::make_unique<chrome::WebRtcLoggingAgentImpl>(); + } + + return m_webrtcLoggingAgentImpl.get(); +} +#endif // QT_CONFIG(webengine_webrtc) && QT_CONFIG(webengine_extensions) + void ContentRendererClientQt::GetInterface(const std::string &interface_name, mojo::ScopedMessagePipeHandle interface_pipe) { content::RenderThread::Get()->BindHostReceiver(mojo::GenericPendingReceiver(interface_name, std::move(interface_pipe))); diff --git a/src/core/renderer/content_renderer_client_qt.h b/src/core/renderer/content_renderer_client_qt.h index 82d8af514..0b0a7b68c 100644 --- a/src/core/renderer/content_renderer_client_qt.h +++ b/src/core/renderer/content_renderer_client_qt.h @@ -53,6 +53,10 @@ #include <QScopedPointer> +namespace chrome { +class WebRtcLoggingAgentImpl; +} + namespace error_page { class Error; } @@ -130,6 +134,11 @@ public: const chrome::mojom::PluginInfo& plugin_info); #endif +#if QT_CONFIG(webengine_webrtc) && QT_CONFIG(webengine_extensions) + chrome::WebRtcLoggingAgentImpl *GetWebRtcLoggingAgent(); +#endif + + private: #if BUILDFLAG(ENABLE_SPELLCHECK) void InitSpellCheck(); @@ -147,6 +156,9 @@ private: #if QT_CONFIG(webengine_spellchecker) QScopedPointer<SpellCheck> m_spellCheck; #endif +#if QT_CONFIG(webengine_webrtc) && QT_CONFIG(webengine_extensions) + std::unique_ptr<chrome::WebRtcLoggingAgentImpl> m_webrtcLoggingAgentImpl; +#endif DISALLOW_COPY_AND_ASSIGN(ContentRendererClientQt); }; |