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

Unified Diff: chrome/browser/fav_icon_helper.cc

Issue 6651014: Applied the IconType. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Addressed the comments Created 9 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/fav_icon_helper.cc
diff --git a/chrome/browser/fav_icon_helper.cc b/chrome/browser/fav_icon_helper.cc
index a40ec2a7ffbcdc970dc8ab50721ba0abb2ee66ef..a7fbd5cababc8b380b84bbb8bd289d6abdd29825 100644
--- a/chrome/browser/fav_icon_helper.cc
+++ b/chrome/browser/fav_icon_helper.cc
@@ -52,7 +52,8 @@ void FavIconHelper::FetchFavIcon(const GURL& url) {
// renderer is going to notify us (well TabContents) when the favicon url is
// available.
if (GetFaviconService()) {
- GetFaviconService()->GetFaviconForURL(url_, &cancelable_consumer_,
+ GetFaviconService()->GetFaviconForURL(url_, history::FAV_ICON,
+ &cancelable_consumer_,
NewCallback(this, &FavIconHelper::OnFavIconDataForInitialURL));
}
}
@@ -83,7 +84,8 @@ void FavIconHelper::SetFavIcon(
if (GetFaviconService() && ShouldSaveFavicon(url)) {
std::vector<unsigned char> image_data;
gfx::PNGCodec::EncodeBGRASkBitmap(sized_image, false, &image_data);
- GetFaviconService()->SetFavicon(url, image_url, image_data);
+ GetFaviconService()->SetFavicon(url, image_url, image_data,
+ history::FAV_ICON);
}
if (url == url_) {
@@ -182,32 +184,29 @@ NavigationEntry* FavIconHelper::GetEntry() {
void FavIconHelper::OnFavIconDataForInitialURL(
FaviconService::Handle handle,
- bool know_favicon,
- scoped_refptr<RefCountedMemory> data,
- bool expired,
- GURL icon_url) {
+ history::FaviconData favicon) {
NavigationEntry* entry = GetEntry();
if (!entry)
return;
got_fav_icon_from_history_ = true;
- fav_icon_expired_ = (know_favicon && expired);
+ fav_icon_expired_ = (favicon.known_icon && favicon.expired);
- if (know_favicon && !entry->favicon().is_valid() &&
- (!got_fav_icon_url_ || entry->favicon().url() == icon_url)) {
+ if (favicon.known_icon && !entry->favicon().is_valid() &&
+ (!got_fav_icon_url_ || entry->favicon().url() == favicon.icon_url)) {
// The db knows the favicon (although it may be out of date) and the entry
// doesn't have an icon. Set the favicon now, and if the favicon turns out
// to be expired (or the wrong url) we'll fetch later on. This way the
// user doesn't see a flash of the default favicon.
- entry->favicon().set_url(icon_url);
- if (data.get() && data->size())
- UpdateFavIcon(entry, data);
+ entry->favicon().set_url(favicon.icon_url);
+ if (favicon.image_data.get() && favicon.image_data->size())
sky 2011/03/11 17:56:45 is_valid
+ UpdateFavIcon(entry, favicon.image_data);
entry->favicon().set_is_valid(true);
}
- if (know_favicon && !expired) {
- if (got_fav_icon_url_ && entry->favicon().url() != icon_url) {
+ if (favicon.known_icon && !favicon.expired) {
+ if (got_fav_icon_url_ && entry->favicon().url() != favicon.icon_url) {
// Mapping in the database is wrong. DownloadFavIconOrAskHistory will
// update the mapping for this url and download the favicon if we don't
// already have it.
@@ -235,6 +234,7 @@ void FavIconHelper::DownloadFavIconOrAskHistory(NavigationEntry* entry) {
if (profile()->IsOffTheRecord()) {
GetFaviconService()->GetFavicon(
entry->favicon().url(),
+ history::FAV_ICON,
&cancelable_consumer_,
NewCallback(this, &FavIconHelper::OnFavIconData));
} else {
@@ -246,7 +246,9 @@ void FavIconHelper::DownloadFavIconOrAskHistory(NavigationEntry* entry) {
// Issue the request and associate the current page ID with it.
GetFaviconService()->UpdateFaviconMappingAndFetch(
entry->url(),
- entry->favicon().url(), &cancelable_consumer_,
+ entry->favicon().url(),
+ history::FAV_ICON,
+ &cancelable_consumer_,
NewCallback(this, &FavIconHelper::OnFavIconData));
}
}
@@ -254,10 +256,7 @@ void FavIconHelper::DownloadFavIconOrAskHistory(NavigationEntry* entry) {
void FavIconHelper::OnFavIconData(
FaviconService::Handle handle,
- bool know_favicon,
- scoped_refptr<RefCountedMemory> data,
- bool expired,
- GURL icon_url) {
+ history::FaviconData favicon) {
NavigationEntry* entry = GetEntry();
if (!entry)
return;
@@ -265,14 +264,14 @@ void FavIconHelper::OnFavIconData(
// No need to update the favicon url. By the time we get here
// UpdateFavIconURL will have set the favicon url.
- if (know_favicon && data.get() && data->size()) {
+ if (favicon.is_valid()) {
// There is a favicon, set it now. If expired we'll download the current
// one again, but at least the user will get some icon instead of the
// default and most likely the current one is fine anyway.
- UpdateFavIcon(entry, data);
+ UpdateFavIcon(entry, favicon.image_data);
}
- if (!know_favicon || expired) {
+ if (!favicon.known_icon || favicon.expired) {
// We don't know the favicon, or it is out of date. Request the current one.
ScheduleDownload(entry->url(), entry->favicon().url(), kFavIconSize, NULL);
}

Powered by Google App Engine
This is Rietveld 408576698