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

Side by Side Diff: content/public/browser/render_process_host.h

Issue 88503002: Have the unload event execute in background on cross-site navigations (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Keeping the old rvh alive for up to 1s Created 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ 5 #ifndef CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_
6 #define CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ 6 #define CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/id_map.h" 9 #include "base/id_map.h"
10 #include "base/process/kill.h" 10 #include "base/process/kill.h"
(...skipping 11 matching lines...) Expand all
22 namespace base { 22 namespace base {
23 class TimeDelta; 23 class TimeDelta;
24 } 24 }
25 25
26 namespace content { 26 namespace content {
27 class BrowserContext; 27 class BrowserContext;
28 class BrowserMessageFilter; 28 class BrowserMessageFilter;
29 class RenderProcessHostObserver; 29 class RenderProcessHostObserver;
30 class RenderWidgetHost; 30 class RenderWidgetHost;
31 class StoragePartition; 31 class StoragePartition;
32 struct GlobalRequestID;
32 33
33 typedef base::Thread* (*RendererMainThreadFactoryFunction)( 34 typedef base::Thread* (*RendererMainThreadFactoryFunction)(
34 const std::string& id); 35 const std::string& id);
35 36
36 // Interface that represents the browser side of the browser <-> renderer 37 // Interface that represents the browser side of the browser <-> renderer
37 // communication channel. There will generally be one RenderProcessHost per 38 // communication channel. There will generally be one RenderProcessHost per
38 // renderer process. 39 // renderer process.
39 class CONTENT_EXPORT RenderProcessHost : public IPC::Sender, 40 class CONTENT_EXPORT RenderProcessHost : public IPC::Sender,
40 public IPC::Listener, 41 public IPC::Listener,
41 public base::SupportsUserData { 42 public base::SupportsUserData {
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after
203 204
204 // Signals that a compositing surface has been updated after a lost context 205 // Signals that a compositing surface has been updated after a lost context
205 // event, so that we can process requests from the renderer to create contexts 206 // event, so that we can process requests from the renderer to create contexts
206 // with that surface. 207 // with that surface.
207 virtual void SurfaceUpdated(int32 surface_id) = 0; 208 virtual void SurfaceUpdated(int32 surface_id) = 0;
208 209
209 // Called to resume the requests for a view created through window.open that 210 // Called to resume the requests for a view created through window.open that
210 // were initially blocked. 211 // were initially blocked.
211 virtual void ResumeRequestsForView(int route_id) = 0; 212 virtual void ResumeRequestsForView(int route_id) = 0;
212 213
214 // Tells the ResourceDispatcherHost to resume a deferred navigation without
215 // transferring it to a new renderer process.
216 virtual void ResumeDeferredNavigation(const GlobalRequestID& request_id) = 0;
Charlie Reis 2013/12/09 20:12:29 I don't think this should be public.
217
213 // Static management functions ----------------------------------------------- 218 // Static management functions -----------------------------------------------
214 219
215 // Flag to run the renderer in process. This is primarily 220 // Flag to run the renderer in process. This is primarily
216 // for debugging purposes. When running "in process", the 221 // for debugging purposes. When running "in process", the
217 // browser maintains a single RenderProcessHost which communicates 222 // browser maintains a single RenderProcessHost which communicates
218 // to a RenderProcess which is instantiated in the same process 223 // to a RenderProcess which is instantiated in the same process
219 // with the Browser. All IPC between the Browser and the 224 // with the Browser. All IPC between the Browser and the
220 // Renderer is the same, it's just not crossing a process boundary. 225 // Renderer is the same, it's just not crossing a process boundary.
221 226
222 static bool run_renderer_in_process(); 227 static bool run_renderer_in_process();
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
264 // module. 269 // module.
265 static size_t GetMaxRendererProcessCount(); 270 static size_t GetMaxRendererProcessCount();
266 271
267 static void RegisterRendererMainThreadFactory( 272 static void RegisterRendererMainThreadFactory(
268 RendererMainThreadFactoryFunction create); 273 RendererMainThreadFactoryFunction create);
269 }; 274 };
270 275
271 } // namespace content. 276 } // namespace content.
272 277
273 #endif // CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ 278 #endif // CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698