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

Unified Diff: chrome/browser/favicon/favicon_service.cc

Issue 10802066: Adds support for saving favicon size into history database. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 5 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/favicon/favicon_service.cc
diff --git a/chrome/browser/favicon/favicon_service.cc b/chrome/browser/favicon/favicon_service.cc
index 6c55b307fd75475ad91d8a8448a4aa5aa5b421dd..8c323afa779fe4fc0af7ce0c0ad12595faa2cf31 100644
--- a/chrome/browser/favicon/favicon_service.cc
+++ b/chrome/browser/favicon/favicon_service.cc
@@ -10,6 +10,7 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/webui/chrome_web_ui_controller_factory.h"
#include "chrome/common/url_constants.h"
+#include "ui/gfx/favicon_size.h"
FaviconService::FaviconService(Profile* profile) : profile_(profile) {
}
@@ -24,7 +25,8 @@ FaviconService::Handle FaviconService::GetFavicon(
HistoryService* hs =
HistoryServiceFactory::GetForProfile(profile_, Profile::EXPLICIT_ACCESS);
if (hs)
- hs->GetFavicon(request, icon_url, icon_type);
+ hs->GetFavicon(request, icon_url,
+ gfx::Size(gfx::kFaviconSize, gfx::kFaviconSize), icon_type);
else
ForwardEmptyResultAsync(request);
return request->handle();
@@ -40,10 +42,14 @@ FaviconService::Handle FaviconService::UpdateFaviconMappingAndFetch(
AddRequest(request, consumer);
HistoryService* hs =
HistoryServiceFactory::GetForProfile(profile_, Profile::EXPLICIT_ACCESS);
- if (hs)
- hs->UpdateFaviconMappingAndFetch(request, page_url, icon_url, icon_type);
- else
+ if (hs) {
+ gfx::Size default_icon_size =
+ gfx::Size(gfx::kFaviconSize, gfx::kFaviconSize);
+ hs->UpdateFaviconMappingAndFetch(request, page_url, icon_url,
+ default_icon_size, icon_type);
+ } else {
ForwardEmptyResultAsync(request);
+ }
return request->handle();
}
@@ -62,10 +68,12 @@ FaviconService::Handle FaviconService::GetFaviconForURL(
} else {
HistoryService* hs = HistoryServiceFactory::GetForProfile(
profile_, Profile::EXPLICIT_ACCESS);
- if (hs)
- hs->GetFaviconForURL(request, page_url, icon_types);
- else
+ if (hs) {
+ gfx::Size default_icon_size(gfx::kFaviconSize, gfx::kFaviconSize);
+ hs->GetFaviconForURL(request, page_url, default_icon_size, icon_types);
+ } else {
ForwardEmptyResultAsync(request);
+ }
}
return handle;
}
@@ -119,8 +127,13 @@ void FaviconService::SetFavicon(const GURL& page_url,
history::IconType icon_type) {
HistoryService* hs =
HistoryServiceFactory::GetForProfile(profile_, Profile::EXPLICIT_ACCESS);
- if (hs)
- hs->SetFavicon(page_url, icon_url, image_data, icon_type);
+ if (hs) {
+ // This size should correspond to FaviconHandler::preferred_icon_size().
+ // TODO(pkotwicz): Fix this.
+ gfx::Size preferred_size = (icon_type == history::FAVICON) ?
+ gfx::Size(gfx::kFaviconSize, gfx::kFaviconSize) : gfx::Size();
+ hs->SetFavicon(page_url, icon_url, image_data, preferred_size, icon_type);
+ }
}
FaviconService::~FaviconService() {

Powered by Google App Engine
This is Rietveld 408576698