diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2020-01-13 13:54:17 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2020-02-28 14:24:35 +0100 |
commit | 42af15c421a520499bc872e2d55053dcffb2a07b (patch) | |
tree | c0e8836daec4903254c7ae633eb8ef27a4502f00 /src/core/renderer | |
parent | 01d4c6440b52f2ce26ced45b6ad193e909db44af (diff) |
Adaptations for Chromium 78
Including removal of renderer service.
[ChangeLog][QWebEngineSetting] XSS Auditing has been removed, and
XSSAuditingEnabled no longer has any effect.
Change-Id: I0835e2a76551057f3eea30a343e0373b642192f0
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/core/renderer')
-rw-r--r-- | src/core/renderer/content_renderer_client_qt.cpp | 30 | ||||
-rw-r--r-- | src/core/renderer/content_renderer_client_qt.h | 15 |
2 files changed, 10 insertions, 35 deletions
diff --git a/src/core/renderer/content_renderer_client_qt.cpp b/src/core/renderer/content_renderer_client_qt.cpp index 0201e5de4..7dc0525ab 100644 --- a/src/core/renderer/content_renderer_client_qt.cpp +++ b/src/core/renderer/content_renderer_client_qt.cpp @@ -97,6 +97,7 @@ #include "services/service_manager/public/cpp/binder_registry.h" #include "services/service_manager/public/cpp/connector.h" +#include "services/service_manager/public/cpp/service_binding.h" #include "components/grit/components_resources.h" @@ -113,7 +114,7 @@ namespace QtWebEngineCore { static const char kHttpErrorDomain[] = "http"; -ContentRendererClientQt::ContentRendererClientQt() : m_serviceBinding(this) +ContentRendererClientQt::ContentRendererClientQt() { #if BUILDFLAG(ENABLE_EXTENSIONS) extensions::ExtensionsClient::Set(extensions::ExtensionsClientQt::GetInstance()); @@ -126,7 +127,6 @@ ContentRendererClientQt::~ContentRendererClientQt() {} void ContentRendererClientQt::RenderThreadStarted() { content::RenderThread *renderThread = content::RenderThread::Get(); - (void)GetConnector(); m_renderThreadObserver.reset(new RenderThreadObserverQt()); m_visitedLinkSlave.reset(new visitedlink::VisitedLinkSlave); m_webCacheImpl.reset(new web_cache::WebCacheImpl()); @@ -147,6 +147,7 @@ void ContentRendererClientQt::RenderThreadStarted() #endif // Allow XMLHttpRequests from qrc to file. + // ### consider removing for Qt6 blink::WebURL qrc(blink::KURL("qrc:")); blink::WebString file(blink::WebString::FromASCII("file")); blink::WebSecurityPolicy::AddOriginAccessAllowListEntry( @@ -343,18 +344,16 @@ content::BrowserPluginDelegate *ContentRendererClientQt::CreateBrowserPluginDele #endif } -void ContentRendererClientQt::OnBindInterface(const service_manager::BindSourceInfo &remote_info, - const std::string &name, - mojo::ScopedMessagePipeHandle handle) +void ContentRendererClientQt::BindReceiverOnMainThread(mojo::GenericPendingReceiver receiver) { - Q_UNUSED(remote_info); - m_registry.TryBindInterface(name, &handle); + std::string interface_name = *receiver.interface_name(); + auto pipe = receiver.PassPipe(); + m_registry.TryBindInterface(interface_name, &pipe); } void ContentRendererClientQt::GetInterface(const std::string &interface_name, mojo::ScopedMessagePipeHandle interface_pipe) { - m_serviceBinding.GetConnector()->BindInterface(service_manager::ServiceFilter::ByName("qtwebengine"), - interface_name, std::move(interface_pipe)); + content::RenderThread::Get()->BindHostReceiver(mojo::GenericPendingReceiver(interface_name, std::move(interface_pipe))); } // The following is based on chrome/renderer/media/chrome_key_systems.cc: @@ -579,15 +578,4 @@ void ContentRendererClientQt::WillSendRequest(blink::WebLocalFrame *frame, attach_same_site_cookies); } -void ContentRendererClientQt::CreateRendererService(service_manager::mojom::ServiceRequest service_request) -{ - DCHECK(!m_serviceBinding.is_bound()); - m_serviceBinding.Bind(std::move(service_request)); -} - -service_manager::Connector *ContentRendererClientQt::GetConnector() -{ - return m_serviceBinding.GetConnector(); -} - -} // namespace +} // namespace QtWebEngineCore diff --git a/src/core/renderer/content_renderer_client_qt.h b/src/core/renderer/content_renderer_client_qt.h index 4b394bd3e..7cd282a83 100644 --- a/src/core/renderer/content_renderer_client_qt.h +++ b/src/core/renderer/content_renderer_client_qt.h @@ -43,10 +43,7 @@ #include "content/public/renderer/content_renderer_client.h" #include "components/spellcheck/spellcheck_buildflags.h" #include "services/service_manager/public/cpp/binder_registry.h" -#include "services/service_manager/public/cpp/connector.h" #include "services/service_manager/public/cpp/local_interface_provider.h" -#include "services/service_manager/public/cpp/service.h" -#include "services/service_manager/public/cpp/service_binding.h" #include <QScopedPointer> @@ -76,7 +73,6 @@ class RenderThreadObserverQt; class ContentRendererClientQt : public content::ContentRendererClient - , public service_manager::Service , public service_manager::LocalInterfaceProvider { public: @@ -125,19 +121,12 @@ public: GURL *new_url, bool *attach_same_site_cookies) override; - void CreateRendererService(service_manager::mojom::ServiceRequest service_request) override; + void BindReceiverOnMainThread(mojo::GenericPendingReceiver receiver) override; private: #if BUILDFLAG(ENABLE_SPELLCHECK) void InitSpellCheck(); #endif - service_manager::Connector *GetConnector(); - - // service_manager::Service: - void OnBindInterface(const service_manager::BindSourceInfo &remote_info, - const std::string &name, - mojo::ScopedMessagePipeHandle handle) override; - // service_manager::LocalInterfaceProvider: void GetInterface(const std::string &name, mojo::ScopedMessagePipeHandle request_handle) override; @@ -151,8 +140,6 @@ private: QScopedPointer<SpellCheck> m_spellCheck; #endif - service_manager::mojom::ConnectorRequest m_connectorRequest; - service_manager::ServiceBinding m_serviceBinding; service_manager::BinderRegistry m_registry; std::unique_ptr<network_hints::PrescientNetworkingDispatcher> m_prescientNetworkingDispatcher; |