Index: chrome/browser/ui/toolbar/back_forward_menu_model.cc |
diff --git a/chrome/browser/ui/toolbar/back_forward_menu_model.cc b/chrome/browser/ui/toolbar/back_forward_menu_model.cc |
index 3c343f5a3906da44071453d53648e296653aeda4..83135f2241a031f4df42ebd247424c907fa86d8e 100644 |
--- a/chrome/browser/ui/toolbar/back_forward_menu_model.cc |
+++ b/chrome/browser/ui/toolbar/back_forward_menu_model.cc |
@@ -31,7 +31,7 @@ |
#include "ui/base/l10n/l10n_util.h" |
#include "ui/base/resource/resource_bundle.h" |
#include "ui/base/text/text_elider.h" |
-#include "ui/gfx/codec/png_codec.h" |
+#include "ui/gfx/favicon_size.h" |
using content::NavigationController; |
using content::NavigationEntry; |
@@ -250,8 +250,9 @@ void BackForwardMenuModel::FetchFavicon(NavigationEntry* entry) { |
browser_->profile(), Profile::EXPLICIT_ACCESS); |
if (!favicon_service) |
return; |
- FaviconService::Handle handle = favicon_service->GetFaviconForURL( |
- browser_->profile(), entry->GetURL(), history::FAVICON, &load_consumer_, |
+ FaviconService::Handle handle = favicon_service->GetFaviconImageForURL( |
+ browser_->profile(), entry->GetURL(), history::FAVICON, |
+ gfx::kFaviconSize, &load_consumer_, |
base::Bind(&BackForwardMenuModel::OnFavIconDataAvailable, |
base::Unretained(this))); |
load_consumer_.SetClientData(favicon_service, handle, entry->GetUniqueID()); |
@@ -259,8 +260,8 @@ void BackForwardMenuModel::FetchFavicon(NavigationEntry* entry) { |
void BackForwardMenuModel::OnFavIconDataAvailable( |
FaviconService::Handle handle, |
- history::FaviconData favicon) { |
- if (favicon.is_valid()) { |
+ const history::FaviconImageResult& image_result) { |
+ if (!image_result.image.IsEmpty()) { |
int unique_id = load_consumer_.GetClientDataForCurrentRequest(); |
// Find the current model_index for the unique_id. |
NavigationEntry* entry = NULL; |
@@ -283,16 +284,13 @@ void BackForwardMenuModel::OnFavIconDataAvailable( |
// Now that we have a valid NavigationEntry, decode the favicon and assign |
// it to the NavigationEntry. |
- gfx::Image icon(favicon.image_data->front(), favicon.image_data->size()); |
- if (!icon.IsEmpty()) { |
- entry->GetFavicon().valid = true; |
- entry->GetFavicon().url = favicon.icon_url; |
- // TODO: Once the history service returns more representations, |
- // use them all instead of having just the lodpi favicon. |
- entry->GetFavicon().image = icon; |
- if (menu_model_delegate()) { |
- menu_model_delegate()->OnIconChanged(model_index); |
- } |
+ entry->GetFavicon().valid = true; |
+ entry->GetFavicon().url = image_result.icon_url; |
+ // TODO: Once the history service returns more representations, |
+ // use them all instead of having just the lodpi favicon. |
+ entry->GetFavicon().image = image_result.image; |
+ if (menu_model_delegate()) { |
+ menu_model_delegate()->OnIconChanged(model_index); |
} |
} |
} |