summaryrefslogtreecommitdiffstats
path: root/chrome/browser/bookmarks/bookmark_model.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/bookmarks/bookmark_model.cc')
-rw-r--r--chrome/browser/bookmarks/bookmark_model.cc19
1 files changed, 8 insertions, 11 deletions
diff --git a/chrome/browser/bookmarks/bookmark_model.cc b/chrome/browser/bookmarks/bookmark_model.cc
index fcdea2f..30d361b 100644
--- a/chrome/browser/bookmarks/bookmark_model.cc
+++ b/chrome/browser/bookmarks/bookmark_model.cc
@@ -29,6 +29,7 @@
#include "grit/generated_resources.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/l10n/l10n_util_collator.h"
+#include "ui/gfx/favicon_size.h"
#include "ui/gfx/image/image_util.h"
using base::Time;
@@ -777,21 +778,16 @@ BookmarkPermanentNode* BookmarkModel::CreatePermanentNode(
void BookmarkModel::OnFaviconDataAvailable(
FaviconService::Handle handle,
- history::FaviconData favicon) {
+ const history::FaviconImageResult& image_result) {
BookmarkNode* node =
load_consumer_.GetClientData(
FaviconServiceFactory::GetForProfile(
profile_, Profile::EXPLICIT_ACCESS), handle);
DCHECK(node);
node->set_favicon_load_handle(0);
- if (favicon.is_valid()) {
- scoped_ptr<gfx::Image> favicon_image(
- gfx::ImageFromPNGEncodedData(favicon.image_data->front(),
- favicon.image_data->size()));
- if (favicon_image.get()) {
- node->set_favicon(*favicon_image.get());
- FaviconLoaded(node);
- }
+ if (!image_result.image.IsEmpty()) {
+ node->set_favicon(image_result.image);
+ FaviconLoaded(node);
}
}
@@ -804,8 +800,9 @@ void BookmarkModel::LoadFavicon(BookmarkNode* node) {
profile_, Profile::EXPLICIT_ACCESS);
if (!favicon_service)
return;
- FaviconService::Handle handle = favicon_service->GetFaviconForURL(
- profile_, node->url(), history::FAVICON, &load_consumer_,
+ FaviconService::Handle handle = favicon_service->GetFaviconImageForURL(
+ profile_, node->url(), history::FAVICON, gfx::kFaviconSize,
+ &load_consumer_,
base::Bind(&BookmarkModel::OnFaviconDataAvailable,
base::Unretained(this)));
load_consumer_.SetClientData(favicon_service, handle, node);