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

Side by Side Diff: content/browser/renderer_host/render_process_host_impl.h

Issue 8760024: Cross-process postMessage (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Created 9 years 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_BROWSER_RENDERER_HOST_BROWSER_RENDER_PROCESS_HOST_IMPL_H_ 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_BROWSER_RENDER_PROCESS_HOST_IMPL_H_
6 #define CONTENT_BROWSER_RENDERER_HOST_BROWSER_RENDER_PROCESS_HOST_IMPL_H_ 6 #define CONTENT_BROWSER_RENDERER_HOST_BROWSER_RENDER_PROCESS_HOST_IMPL_H_
7 #pragma once 7 #pragma once
8 8
9 #include <map> 9 #include <map>
10 #include <queue> 10 #include <queue>
11 #include <string> 11 #include <string>
12 12
13 #include "base/memory/scoped_ptr.h" 13 #include "base/memory/scoped_ptr.h"
14 #include "base/process.h" 14 #include "base/process.h"
15 #include "base/synchronization/waitable_event_watcher.h" 15 #include "base/synchronization/waitable_event_watcher.h"
16 #include "base/timer.h" 16 #include "base/timer.h"
17 #include "content/browser/child_process_launcher.h" 17 #include "content/browser/child_process_launcher.h"
18 #include "content/common/content_export.h" 18 #include "content/common/content_export.h"
19 #include "content/public/browser/render_process_host.h" 19 #include "content/public/browser/render_process_host.h"
20 #include "ipc/ipc_channel_proxy.h" 20 #include "ipc/ipc_channel_proxy.h"
21 #include "ui/gfx/surface/transport_dib.h" 21 #include "ui/gfx/surface/transport_dib.h"
22 22
23 class CommandLine; 23 class CommandLine;
24 class RendererMainThread; 24 class RendererMainThread;
25 class RenderWidgetHelper; 25 class RenderWidgetHelper;
26 struct ViewMsg_PostMessage_Params;
26 27
27 namespace base { 28 namespace base {
28 class WaitableEvent; 29 class WaitableEvent;
29 } 30 }
30 31
31 // Implements a concrete RenderProcessHost for the browser process for talking 32 // Implements a concrete RenderProcessHost for the browser process for talking
32 // to actual renderer processes (as opposed to mocks). 33 // to actual renderer processes (as opposed to mocks).
33 // 34 //
34 // Represents the browser side of the browser <--> renderer communication 35 // Represents the browser side of the browser <--> renderer communication
35 // channel. There will be one RenderProcessHost per renderer process. 36 // channel. There will be one RenderProcessHost per renderer process.
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 // Creates and adds the IO thread message filters. 150 // Creates and adds the IO thread message filters.
150 void CreateMessageFilters(); 151 void CreateMessageFilters();
151 152
152 // Control message handlers. 153 // Control message handlers.
153 void OnShutdownRequest(); 154 void OnShutdownRequest();
154 void OnDumpHandlesDone(); 155 void OnDumpHandlesDone();
155 void SuddenTerminationChanged(bool enabled); 156 void SuddenTerminationChanged(bool enabled);
156 void OnUserMetricsRecordAction(const std::string& action); 157 void OnUserMetricsRecordAction(const std::string& action);
157 void OnRevealFolderInOS(const FilePath& path); 158 void OnRevealFolderInOS(const FilePath& path);
158 void OnSavedPageAsMHTML(int job_id, int64 mhtml_file_size); 159 void OnSavedPageAsMHTML(int job_id, int64 mhtml_file_size);
160 void OnSendPostMessage(int64 browsing_instance_frame_id,
161 const ViewMsg_PostMessage_Params& params);
Charlie Reis 2011/12/01 23:13:02 Why put this on RenderProcessHost? I would have t
supersat 2011/12/09 23:08:20 The ProxyViewHost (which can send this message on
Charlie Reis 2011/12/12 22:20:36 Ah, fair enough.
159 162
160 // Generates a command line to be used to spawn a renderer and appends the 163 // Generates a command line to be used to spawn a renderer and appends the
161 // results to |*command_line|. 164 // results to |*command_line|.
162 void AppendRendererCommandLine(CommandLine* command_line) const; 165 void AppendRendererCommandLine(CommandLine* command_line) const;
163 166
164 // Copies applicable command line switches from the given |browser_cmd| line 167 // Copies applicable command line switches from the given |browser_cmd| line
165 // flags to the output |renderer_cmd| line flags. Not all switches will be 168 // flags to the output |renderer_cmd| line flags. Not all switches will be
166 // copied over. 169 // copied over.
167 void PropagateBrowserCommandLineToRenderer(const CommandLine& browser_cmd, 170 void PropagateBrowserCommandLineToRenderer(const CommandLine& browser_cmd,
168 CommandLine* renderer_cmd) const; 171 CommandLine* renderer_cmd) const;
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 // filtering for this at the render widget level. 251 // filtering for this at the render widget level.
249 bool ignore_input_events_; 252 bool ignore_input_events_;
250 253
251 // Records the last time we regarded the child process active. 254 // Records the last time we regarded the child process active.
252 base::TimeTicks child_process_activity_time_; 255 base::TimeTicks child_process_activity_time_;
253 256
254 DISALLOW_COPY_AND_ASSIGN(RenderProcessHostImpl); 257 DISALLOW_COPY_AND_ASSIGN(RenderProcessHostImpl);
255 }; 258 };
256 259
257 #endif // CONTENT_BROWSER_RENDERER_HOST_BROWSER_RENDER_PROCESS_HOST_IMPL_H_ 260 #endif // CONTENT_BROWSER_RENDERER_HOST_BROWSER_RENDER_PROCESS_HOST_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698