Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(609)

Unified Diff: chrome/browser/chrome_content_browser_client.cc

Issue 2766263009: Convert content ConnectionFilter to OnBindInterface (Closed)
Patch Set: . Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chrome_content_browser_client.cc
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
index 6f4e66500156f32a069b4792e265a539281612c8..8bb9308ee10a2f796fa0dbcdb9297696eb75144a 100644
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -197,6 +197,7 @@
#include "ppapi/host/ppapi_host.h"
#include "printing/features/features.h"
#include "services/preferences/public/interfaces/preferences.mojom.h"
+#include "services/service_manager/public/cpp/binder_registry.h"
#include "services/service_manager/public/cpp/interface_provider.h"
#include "services/service_manager/public/cpp/interface_registry.h"
#include "services/service_manager/public/cpp/service.h"
@@ -975,6 +976,10 @@ ChromeContentBrowserClient::ChromeContentBrowserClient()
#if BUILDFLAG(ENABLE_EXTENSIONS)
extra_parts_.push_back(new ChromeContentBrowserClientExtensionsPart);
#endif
+
+ gpu_binder_registry_.AddInterface(
+ base::Bind(&metrics::CallStackProfileCollector::Create,
+ metrics::CallStackProfileParams::GPU_PROCESS));
}
ChromeContentBrowserClient::~ChromeContentBrowserClient() {
@@ -3061,7 +3066,7 @@ bool ChromeContentBrowserClient::PreSpawnRenderer(
#endif // defined(OS_WIN)
void ChromeContentBrowserClient::ExposeInterfacesToRenderer(
- service_manager::InterfaceRegistry* registry,
+ service_manager::BinderRegistry* registry,
content::RenderProcessHost* render_process_host) {
scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner =
content::BrowserThread::GetTaskRunnerForThread(
@@ -3205,12 +3210,15 @@ void ChromeContentBrowserClient::RegisterRenderFrameMojoInterfaces(
#endif
}
-void ChromeContentBrowserClient::ExposeInterfacesToGpuProcess(
- service_manager::InterfaceRegistry* registry,
- content::GpuProcessHost* render_process_host) {
- registry->AddInterface(
- base::Bind(&metrics::CallStackProfileCollector::Create,
- metrics::CallStackProfileParams::GPU_PROCESS));
+void ChromeContentBrowserClient::BindInterfaceRequest(
+ const service_manager::ServiceInfo& source_info,
+ const std::string& interface_name,
+ mojo::ScopedMessagePipeHandle* interface_pipe) {
+ if (source_info.identity.name() == content::mojom::kGpuServiceName &&
+ gpu_binder_registry_.CanBindInterface(interface_name)) {
+ gpu_binder_registry_.BindInterface(source_info.identity, interface_name,
+ std::move(*interface_pipe));
+ }
}
void ChromeContentBrowserClient::RegisterInProcessServices(
« no previous file with comments | « chrome/browser/chrome_content_browser_client.h ('k') | chrome/browser/chromeos/arc/video/gpu_arc_video_service_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698