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

Side by Side Diff: chrome/browser/prerender/prerender_render_view_host_observer.cc

Issue 11411180: move favicon download code from chrome/ into content/ (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix order Created 8 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) 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 #include "chrome/browser/prerender/prerender_render_view_host_observer.h" 5 #include "chrome/browser/prerender/prerender_render_view_host_observer.h"
6 6
7 #include "chrome/browser/prerender/prerender_contents.h" 7 #include "chrome/browser/prerender/prerender_contents.h"
8 #include "chrome/common/icon_messages.h"
9 #include "chrome/common/render_messages.h" 8 #include "chrome/common/render_messages.h"
10 9
11 using content::RenderViewHost; 10 using content::RenderViewHost;
12 11
13 namespace prerender { 12 namespace prerender {
14 13
15 PrerenderRenderViewHostObserver::PrerenderRenderViewHostObserver( 14 PrerenderRenderViewHostObserver::PrerenderRenderViewHostObserver(
16 PrerenderContents* prerender_contents, 15 PrerenderContents* prerender_contents,
17 RenderViewHost* render_view_host) 16 RenderViewHost* render_view_host)
18 : content::RenderViewHostObserver(render_view_host), 17 : content::RenderViewHostObserver(render_view_host),
19 prerender_contents_(prerender_contents) { 18 prerender_contents_(prerender_contents) {
20 } 19 }
21 20
22 void PrerenderRenderViewHostObserver::RenderViewHostDestroyed( 21 void PrerenderRenderViewHostObserver::RenderViewHostDestroyed(
23 RenderViewHost* rvh) { 22 RenderViewHost* rvh) {
24 // The base class deletes |this| on RenderViewHost destruction but we want the 23 // The base class deletes |this| on RenderViewHost destruction but we want the
25 // lifetime to be tied to the PrerenderContents instead, so we'll do nothing 24 // lifetime to be tied to the PrerenderContents instead, so we'll do nothing
26 // here. 25 // here.
27 } 26 }
28 27
29 bool PrerenderRenderViewHostObserver::OnMessageReceived( 28 bool PrerenderRenderViewHostObserver::OnMessageReceived(
30 const IPC::Message& message) { 29 const IPC::Message& message) {
31 if (!prerender_contents_) 30 if (!prerender_contents_)
32 return content::RenderViewHostObserver::OnMessageReceived(message); 31 return content::RenderViewHostObserver::OnMessageReceived(message);
33 32
34 bool handled = true; 33 bool handled = true;
35 // The following messages we do want to consume. 34 // The following messages we do want to consume.
36 IPC_BEGIN_MESSAGE_MAP(PrerenderRenderViewHostObserver, message) 35 IPC_BEGIN_MESSAGE_MAP(PrerenderRenderViewHostObserver, message)
37 IPC_MESSAGE_HANDLER(IconHostMsg_UpdateFaviconURL, OnUpdateFaviconURL)
38 IPC_MESSAGE_HANDLER(ChromeViewHostMsg_MaybeCancelPrerenderForHTML5Media, 36 IPC_MESSAGE_HANDLER(ChromeViewHostMsg_MaybeCancelPrerenderForHTML5Media,
39 OnMaybeCancelPrerenderForHTML5Media) 37 OnMaybeCancelPrerenderForHTML5Media)
40 IPC_MESSAGE_HANDLER(ChromeViewHostMsg_CancelPrerenderForPrinting, 38 IPC_MESSAGE_HANDLER(ChromeViewHostMsg_CancelPrerenderForPrinting,
41 OnCancelPrerenderForPrinting) 39 OnCancelPrerenderForPrinting)
42 IPC_MESSAGE_UNHANDLED(handled = false) 40 IPC_MESSAGE_UNHANDLED(handled = false)
43 IPC_END_MESSAGE_MAP() 41 IPC_END_MESSAGE_MAP()
44 42
45 // Pass the message through. 43 // Pass the message through.
46 if (!handled) 44 if (!handled)
47 handled = content::RenderViewHostObserver::OnMessageReceived(message); 45 handled = content::RenderViewHostObserver::OnMessageReceived(message);
48 46
49 return handled; 47 return handled;
50 } 48 }
51 49
52 // The base class declares this as protected so this is just here to make it 50 // The base class declares this as protected so this is just here to make it
53 // public so it is visible to the caller. 51 // public so it is visible to the caller.
54 bool PrerenderRenderViewHostObserver::Send(IPC::Message* message) { 52 bool PrerenderRenderViewHostObserver::Send(IPC::Message* message) {
55 return content::RenderViewHostObserver::Send(message); 53 return content::RenderViewHostObserver::Send(message);
56 } 54 }
57 55
58 void PrerenderRenderViewHostObserver::OnUpdateFaviconURL(
59 int32 page_id,
60 const std::vector<FaviconURL>& urls) {
61 prerender_contents_->OnUpdateFaviconURL(page_id, urls);
62 }
63
64 void PrerenderRenderViewHostObserver::OnMaybeCancelPrerenderForHTML5Media() { 56 void PrerenderRenderViewHostObserver::OnMaybeCancelPrerenderForHTML5Media() {
65 prerender_contents_->Destroy(FINAL_STATUS_HTML5_MEDIA); 57 prerender_contents_->Destroy(FINAL_STATUS_HTML5_MEDIA);
66 } 58 }
67 59
68 void PrerenderRenderViewHostObserver::OnCancelPrerenderForPrinting() { 60 void PrerenderRenderViewHostObserver::OnCancelPrerenderForPrinting() {
69 prerender_contents_->Destroy(FINAL_STATUS_WINDOW_PRINT); 61 prerender_contents_->Destroy(FINAL_STATUS_WINDOW_PRINT);
70 } 62 }
71 63
72 } 64 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698