Chromium Code Reviews| Index: content/browser/renderer_host/render_process_host_impl.h |
| diff --git a/content/browser/renderer_host/render_process_host_impl.h b/content/browser/renderer_host/render_process_host_impl.h |
| index 9ab3d81872b31e82c8a3fcf539a7aa2ed5f9fd5a..31b1bc115eed163fcc939526c6e0d2f199a5a006 100644 |
| --- a/content/browser/renderer_host/render_process_host_impl.h |
| +++ b/content/browser/renderer_host/render_process_host_impl.h |
| @@ -17,11 +17,14 @@ |
| #include "content/browser/geolocation/geolocation_dispatcher_host.h" |
| #include "content/browser/power_monitor_message_broadcaster.h" |
| #include "content/common/content_export.h" |
| +#include "content/common/render_process.mojom.h" |
| #include "content/public/browser/gpu_data_manager_observer.h" |
| #include "content/public/browser/render_process_host.h" |
| #include "ipc/ipc_channel_proxy.h" |
| #include "ipc/ipc_platform_file.h" |
| -#include "mojo/public/cpp/system/core.h" |
| +#include "mojo/embedder/scoped_platform_handle.h" |
| +#include "mojo/public/cpp/bindings/remote_ptr.h" |
| +#include "mojo/public/interfaces/shell/shell.mojom.h" |
| #include "ui/surface/transport_dib.h" |
| struct ViewHostMsg_CompositorSurfaceBuffersSwapped_Params; |
| @@ -41,6 +44,7 @@ class BrowserDemuxerAndroid; |
| class GeolocationDispatcherHost; |
| class GpuMessageFilter; |
| class MessagePortMessageFilter; |
| +class MojoApplicationHost; |
| class PeerConnectionTrackerHost; |
| class RendererMainThread; |
| class RenderProcessHostMojoImpl; |
| @@ -72,7 +76,8 @@ class StoragePartitionImpl; |
| // because all the IPCs from the RenderViews (renderer) will only ever be able |
| // to access the partition they are assigned to. |
| class CONTENT_EXPORT RenderProcessHostImpl |
|
DaveMoore
2014/04/16 23:08:36
This seems bad. You have FooImpl, IFoo and Foo all
darin (slow to review)
2014/04/16 23:26:04
Yeah, I wanted to see what this would feel like. D
DaveMoore
2014/04/17 17:56:09
So what will determine what's in the new interface
koz (OOO until 15th September)
2014/04/22 07:09:59
It's true that the mojo interfaces are just regula
|
| - : public RenderProcessHost, |
| + : public IRenderProcessHost, |
| + public RenderProcessHost, |
| public ChildProcessLauncher::Client, |
| public GpuDataManagerObserver { |
| public: |
| @@ -262,6 +267,8 @@ class CONTENT_EXPORT RenderProcessHostImpl |
| private: |
| friend class VisitRelayingRenderProcessHost; |
| + void InitializeMojo(); |
| + |
| // Creates and adds the IO thread message filters. |
| void CreateMessageFilters(); |
| @@ -301,6 +308,9 @@ class CONTENT_EXPORT RenderProcessHostImpl |
| void SendDisableAecDumpToRenderer(); |
| #endif |
| + scoped_ptr<MojoApplicationHost> mojo_application_host_; |
| + mojo::RemotePtr<IRenderProcess> render_process_; |
| + |
| // The registered IPC listener objects. When this list is empty, we should |
| // delete ourselves. |
| IDMap<IPC::Listener> listeners_; |
| @@ -430,8 +440,6 @@ class CONTENT_EXPORT RenderProcessHostImpl |
| // Records the time when the process starts surviving for workers for UMA. |
| base::TimeTicks survive_for_worker_start_time_; |
| - scoped_ptr<RenderProcessHostMojoImpl> render_process_host_mojo_; |
| - |
| base::WeakPtrFactory<RenderProcessHostImpl> weak_factory_; |
| DISALLOW_COPY_AND_ASSIGN(RenderProcessHostImpl); |