summaryrefslogtreecommitdiffstats
path: root/src/core/renderer
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-01-13 13:54:17 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-02-28 14:24:35 +0100
commit42af15c421a520499bc872e2d55053dcffb2a07b (patch)
treec0e8836daec4903254c7ae633eb8ef27a4502f00 /src/core/renderer
parent01d4c6440b52f2ce26ced45b6ad193e909db44af (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.cpp30
-rw-r--r--src/core/renderer/content_renderer_client_qt.h15
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;