| Index: content/renderer/render_thread_impl.h
|
| diff --git a/content/renderer/render_thread_impl.h b/content/renderer/render_thread_impl.h
|
| index 2457b648018b8cbe9c0e67af364009ecc169c95b..dcbe7ef104014c4608b075be307dfbd439ef5a29 100644
|
| --- a/content/renderer/render_thread_impl.h
|
| +++ b/content/renderer/render_thread_impl.h
|
| @@ -33,6 +33,8 @@
|
| #include "content/renderer/gpu/compositor_dependencies.h"
|
| #include "content/renderer/layout_test_dependencies.h"
|
| #include "gpu/ipc/client/gpu_channel_host.h"
|
| +#include "mojo/public/cpp/bindings/associated_binding.h"
|
| +#include "mojo/public/cpp/bindings/associated_binding_set.h"
|
| #include "net/base/network_change_notifier.h"
|
| #include "third_party/WebKit/public/platform/WebConnectionType.h"
|
| #include "third_party/WebKit/public/platform/scheduler/renderer/renderer_scheduler.h"
|
| @@ -151,7 +153,8 @@ class CONTENT_EXPORT RenderThreadImpl
|
| public gpu::GpuChannelHostFactory,
|
| public blink::scheduler::RendererScheduler::RAILModeObserver,
|
| public memory_coordinator::ChildMemoryCoordinatorDelegate,
|
| - NON_EXPORTED_BASE(public CompositorDependencies) {
|
| + NON_EXPORTED_BASE(public CompositorDependencies),
|
| + NON_EXPORTED_BASE(public mojom::RouteProvider) {
|
| public:
|
| static RenderThreadImpl* Create(const InProcessChildThreadParams& params);
|
| static RenderThreadImpl* Create(
|
| @@ -179,6 +182,9 @@ class CONTENT_EXPORT RenderThreadImpl
|
| void AddRoute(int32_t routing_id, IPC::Listener* listener) override;
|
| void RemoveRoute(int32_t routing_id) override;
|
| int GenerateRoutingID() override;
|
| + void AddRoutedInterfaces(int32_t routing_id,
|
| + mojom::RoutedInterfaceProvider* provider) override;
|
| + mojom::RouteProvider* GetRemoteRouteProvider() override;
|
| void AddFilter(IPC::MessageFilter* filter) override;
|
| void RemoveFilter(IPC::MessageFilter* filter) override;
|
| void AddObserver(RenderThreadObserver* observer) override;
|
| @@ -527,6 +533,13 @@ class CONTENT_EXPORT RenderThreadImpl
|
| void OnSyncMemoryPressure(
|
| base::MemoryPressureListener::MemoryPressureLevel memory_pressure_level);
|
|
|
| + void OnRouteProviderRequest(mojom::RouteProviderAssociatedRequest request);
|
| +
|
| + // mojom::RouteProvider:
|
| + void GetRoutedInterfaces(
|
| + int32_t routing_id,
|
| + mojom::RoutedInterfaceProviderAssociatedRequest request) override;
|
| +
|
| // These objects live solely on the render thread.
|
| std::unique_ptr<AppCacheDispatcher> appcache_dispatcher_;
|
| std::unique_ptr<DomStorageDispatcher> dom_storage_dispatcher_;
|
| @@ -707,6 +720,15 @@ class CONTENT_EXPORT RenderThreadImpl
|
|
|
| mojom::StoragePartitionServicePtr storage_partition_service_;
|
|
|
| + // Registered routed interface providers. These are not owned.
|
| + std::map<int32_t, mojom::RoutedInterfaceProvider*>
|
| + routed_interface_providers_;
|
| +
|
| + mojo::AssociatedBinding<mojom::RouteProvider> route_provider_binding_;
|
| + mojo::AssociatedBindingSet<mojom::RoutedInterfaceProvider>
|
| + routed_interface_provider_bindings_;
|
| +
|
| + mojom::RouteProviderAssociatedPtr remote_route_provider_;
|
| mojom::RenderFrameMessageFilterAssociatedPtr render_frame_message_filter_;
|
|
|
| bool is_renderer_suspended_;
|
|
|