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

Unified Diff: chrome/browser/renderer_host/chrome_render_message_filter.cc

Issue 9875026: **NOTFORLANDING** New link rel=prerender API (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: wdyt? Created 8 years, 9 months 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/renderer_host/chrome_render_message_filter.cc
diff --git a/chrome/browser/renderer_host/chrome_render_message_filter.cc b/chrome/browser/renderer_host/chrome_render_message_filter.cc
index 8dbb3e935ab4205b3e6478c251d8ab85e533d65f..feebeb7318d9fbe133d45e7ac8b74aaa25bfcacc 100644
--- a/chrome/browser/renderer_host/chrome_render_message_filter.cc
+++ b/chrome/browser/renderer_host/chrome_render_message_filter.cc
@@ -21,6 +21,7 @@
#include "chrome/browser/nacl_host/nacl_process_host.h"
#include "chrome/browser/net/chrome_url_request_context.h"
#include "chrome/browser/net/predictor.h"
+#include "chrome/browser/prerender/prerender_link_manager.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/task_manager/task_manager.h"
#include "chrome/common/chrome_notification_types.h"
@@ -29,6 +30,7 @@
#include "chrome/common/extensions/extension_message_bundle.h"
#include "chrome/common/extensions/extension_messages.h"
#include "chrome/common/render_messages.h"
+#include "chrome/common/prerender_messages.h"
#include "chrome/common/url_constants.h"
#include "content/public/browser/notification_service.h"
#include "content/public/browser/render_process_host.h"
@@ -108,6 +110,11 @@ bool ChromeRenderMessageFilter::OnMessageReceived(const IPC::Message& message,
OnCanTriggerClipboardRead)
IPC_MESSAGE_HANDLER(ChromeViewHostMsg_CanTriggerClipboardWrite,
OnCanTriggerClipboardWrite)
+ IPC_MESSAGE_HANDLER(PrerenderMsg_NewLinkPrerender, OnNewLinkPrerender)
cbentzel 2012/03/29 00:13:37 Could these get moved to a separate class which is
gavinp 2012/04/20 17:54:15 Prerendering is confusing enough without mixing up
+ IPC_MESSAGE_HANDLER(PrerenderMsg_RemovedLinkPrerender,
+ OnRemovedLinkPrerender)
+ IPC_MESSAGE_HANDLER(PrerenderMsg_UnloadedLinkPrerender,
+ OnUnloadedLinkPrerender)
IPC_MESSAGE_UNHANDLED(handled = false)
IPC_END_MESSAGE_MAP()
@@ -512,3 +519,34 @@ void ChromeRenderMessageFilter::OnSetCookie(const IPC::Message& message,
render_process_id_, message.routing_id(), url, cookie);
#endif
}
+
+void ChromeRenderMessageFilter::OnNewLinkPrerender(
+ int prerender_id,
+ int render_view_route_id,
+ const GURL& url,
+ const content::Referrer& referrer,
+ const gfx::Size& size) {
+ BrowserThread::PostTask(
+ BrowserThread::UI, FROM_HERE,
+ base::Bind(
+ &prerender::PrerenderLinkManager::OnNewLinkPrerender,
+ profile_, prerender_id, render_process_id_, render_view_route_id,
+ url, referrer, size));
+}
+
+void ChromeRenderMessageFilter::OnRemovedLinkPrerender(
+ int prerender_id) {
+ BrowserThread::PostTask(
+ BrowserThread::UI, FROM_HERE,
+ base::Bind(
+ &prerender::PrerenderLinkManager::OnRemovedLinkPrerender,
+ profile_, prerender_id, render_process_id_));
+}
+void ChromeRenderMessageFilter::OnUnloadedLinkPrerender(
+ int prerender_id) {
+ BrowserThread::PostTask(
+ BrowserThread::UI, FROM_HERE,
+ base::Bind(
+ &prerender::PrerenderLinkManager::OnUnloadedLinkPrerender,
+ profile_, prerender_id, render_process_id_));
+}

Powered by Google App Engine
This is Rietveld 408576698