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

Unified Diff: chrome/browser/task_management/providers/web_contents/renderer_task.cc

Issue 1338023002: Refactor TaskManager's favicon retrieval approach (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 3 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/task_management/providers/web_contents/renderer_task.cc
diff --git a/chrome/browser/task_management/providers/web_contents/renderer_task.cc b/chrome/browser/task_management/providers/web_contents/renderer_task.cc
index 371a7cb7b4b95b00749a6dfbd09dc3b7f31bc231..ca30ac750dd15e99591707ebeb60063e23cd64a9 100644
--- a/chrome/browser/task_management/providers/web_contents/renderer_task.cc
+++ b/chrome/browser/task_management/providers/web_contents/renderer_task.cc
@@ -78,9 +78,17 @@ RendererTask::RendererTask(const base::string16& title,
// All renderer tasks are capable of reporting network usage, so the default
// invalid value of -1 doesn't apply here.
OnNetworkBytesRead(0);
+
+ // Tag the web_contents with a |ContentFaviconDriver| (if needed) so that
+ // we can use it to observe favicons changes.
+ favicon::CreateContentFaviconDriverForWebContents(web_contents);
+ favicon::ContentFaviconDriver::FromWebContents(web_contents)->AddObserver(
+ this);
}
RendererTask::~RendererTask() {
+ favicon::ContentFaviconDriver::FromWebContents(web_contents())->
+ RemoveObserver(this);
}
void RendererTask::Activate() {
@@ -138,6 +146,14 @@ blink::WebCache::ResourceTypeStats RendererTask::GetWebCacheStats() const {
return webcache_stats_;
}
+void RendererTask::OnFaviconAvailable(const gfx::Image& image) {
+}
+
+void RendererTask::OnFaviconUpdated(favicon::FaviconDriver* favicon_driver,
+ bool icon_url_changed) {
+ UpdateFavicon();
+}
+
// static
base::string16 RendererTask::GetTitleFromWebContents(
content::WebContents* web_contents) {

Powered by Google App Engine
This is Rietveld 408576698