summaryrefslogtreecommitdiffstats
path: root/content/browser/renderer_host/render_process_host_impl.h
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-15 22:00:07 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-15 22:00:07 +0000
commit907e1d669f44c15388e8f7183cb8ea706dae7771 (patch)
treea770cfeee5e08b24827a494a99e48f8e1df4fec4 /content/browser/renderer_host/render_process_host_impl.h
parente1c12bc9c1497a2081f1f23071f4d277fafabac8 (diff)
downloadchromium_src-907e1d669f44c15388e8f7183cb8ea706dae7771.zip
chromium_src-907e1d669f44c15388e8f7183cb8ea706dae7771.tar.gz
chromium_src-907e1d669f44c15388e8f7183cb8ea706dae7771.tar.bz2
Adds the ability for the renderer to create the mojo channel
This is initiated and owned by RenderProcessHost. I've added a method to RenderProcessHostImpl to create the channel. No one is calling it yet, that will come after this. RenderProcessHostImpl::CreateMojoChannel initiates the connection and sends an IPC message to the renderer. The renderer than creates its end of the connection. End to end test will come once I've added all the pieces. BUG=none TEST=none R=darin@chromium.org, tsepez@chromium.org, viettrungluu@chromium.org Review URL: https://codereview.chromium.org/195993010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257342 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/renderer_host/render_process_host_impl.h')
-rw-r--r--content/browser/renderer_host/render_process_host_impl.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/content/browser/renderer_host/render_process_host_impl.h b/content/browser/renderer_host/render_process_host_impl.h
index d5e24d3..e76ad9b 100644
--- a/content/browser/renderer_host/render_process_host_impl.h
+++ b/content/browser/renderer_host/render_process_host_impl.h
@@ -40,6 +40,7 @@ class BrowserDemuxerAndroid;
class GeolocationDispatcherHost;
class GpuMessageFilter;
class MessagePortMessageFilter;
+class MojoChannelInit;
class PeerConnectionTrackerHost;
class RendererMainThread;
class RenderWidgetHelper;
@@ -295,6 +296,9 @@ class CONTENT_EXPORT RenderProcessHostImpl
void SendDisableAecDumpToRenderer();
#endif
+ // Establishes the mojo channel to the renderer.
+ void CreateMojoChannel();
+
// The registered IPC listener objects. When this list is empty, we should
// delete ourselves.
IDMap<IPC::Listener> listeners_;
@@ -416,14 +420,18 @@ class CONTENT_EXPORT RenderProcessHostImpl
base::Callback<void(const std::string&)> webrtc_log_message_callback_;
#endif
- // Lives on the browser's ChildThread.
- base::WeakPtrFactory<RenderProcessHostImpl> weak_factory_;
-
// Message filter and dispatcher for screen orientation.
ScreenOrientationDispatcherHost* screen_orientation_dispatcher_host_;
int worker_ref_count_;
+ // TODO(sky): remove ifdef, temporary until mac sorted out.
+#if !defined(OS_MACOSX)
+ scoped_ptr<MojoChannelInit> mojo_channel_init_;
+#endif
+
+ base::WeakPtrFactory<RenderProcessHostImpl> weak_factory_;
+
DISALLOW_COPY_AND_ASSIGN(RenderProcessHostImpl);
};