diff options
author | michaelbai@google.com <michaelbai@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-16 17:05:30 +0000 |
---|---|---|
committer | michaelbai@google.com <michaelbai@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-16 17:05:30 +0000 |
commit | 849ccee35b29ff4e6d69766087c0e2d8a2a01004 (patch) | |
tree | 2d0224faf53752bdda682f78c1a314fcdd2bcf93 /chrome/browser/bookmarks | |
parent | a9590c25660d4be4caad2add5e16e08003e5ed39 (diff) | |
download | chromium_src-849ccee35b29ff4e6d69766087c0e2d8a2a01004.zip chromium_src-849ccee35b29ff4e6d69766087c0e2d8a2a01004.tar.gz chromium_src-849ccee35b29ff4e6d69766087c0e2d8a2a01004.tar.bz2 |
Populated the IconType in FavIconService.
Changed the FavIconService callback to have the IconType parameter.
Changed the callers to use FAV_ICON as default type
BUG=71571
TEST=Tested with existing unit test
Review URL: http://codereview.chromium.org/6651014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78383 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/bookmarks')
-rw-r--r-- | chrome/browser/bookmarks/bookmark_html_writer.cc | 12 | ||||
-rw-r--r-- | chrome/browser/bookmarks/bookmark_html_writer.h | 5 | ||||
-rw-r--r-- | chrome/browser/bookmarks/bookmark_html_writer_unittest.cc | 6 | ||||
-rw-r--r-- | chrome/browser/bookmarks/bookmark_model.cc | 16 | ||||
-rw-r--r-- | chrome/browser/bookmarks/bookmark_model.h | 8 |
5 files changed, 17 insertions, 30 deletions
diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/bookmarks/bookmark_html_writer.cc index 8b0e979..ba70ed0 100644 --- a/chrome/browser/bookmarks/bookmark_html_writer.cc +++ b/chrome/browser/bookmarks/bookmark_html_writer.cc @@ -439,7 +439,8 @@ bool BookmarkFaviconFetcher::FetchNextFavicon() { if (favicons_map_->end() == iter) { FaviconService* favicon_service = profile_->GetFaviconService(Profile::EXPLICIT_ACCESS); - favicon_service->GetFaviconForURL(GURL(url), &favicon_consumer_, + favicon_service->GetFaviconForURL(GURL(url), history::FAVICON, + &favicon_consumer_, NewCallback(this, &BookmarkFaviconFetcher::OnFaviconDataAvailable)); return true; } else { @@ -451,17 +452,14 @@ bool BookmarkFaviconFetcher::FetchNextFavicon() { void BookmarkFaviconFetcher::OnFaviconDataAvailable( FaviconService::Handle handle, - bool know_favicon, - scoped_refptr<RefCountedMemory> data, - bool expired, - GURL icon_url) { + history::FaviconData favicon) { GURL url; if (!bookmark_urls_.empty()) { url = GURL(bookmark_urls_.front()); bookmark_urls_.pop_front(); } - if (know_favicon && data.get() && data->size() && !url.is_empty()) { - favicons_map_->insert(make_pair(url.spec(), data)); + if (favicon.is_valid() && !url.is_empty()) { + favicons_map_->insert(make_pair(url.spec(), favicon.image_data)); } if (FetchNextFavicon()) { diff --git a/chrome/browser/bookmarks/bookmark_html_writer.h b/chrome/browser/bookmarks/bookmark_html_writer.h index 94a88c7..10608a3 100644 --- a/chrome/browser/bookmarks/bookmark_html_writer.h +++ b/chrome/browser/bookmarks/bookmark_html_writer.h @@ -66,10 +66,7 @@ class BookmarkFaviconFetcher: public NotificationObserver { // Favicon fetch callback. After all favicons are fetched executes // html output on the file thread. void OnFaviconDataAvailable(FaviconService::Handle handle, - bool know_favicon, - scoped_refptr<RefCountedMemory> data, - bool expired, - GURL icon_url); + history::FaviconData favicon); // The Profile object used for accessing FaviconService, bookmarks model. Profile* profile_; diff --git a/chrome/browser/bookmarks/bookmark_html_writer_unittest.cc b/chrome/browser/bookmarks/bookmark_html_writer_unittest.cc index 88377f8..2cb48e2 100644 --- a/chrome/browser/bookmarks/bookmark_html_writer_unittest.cc +++ b/chrome/browser/bookmarks/bookmark_html_writer_unittest.cc @@ -197,8 +197,7 @@ TEST_F(BookmarkHTMLWriterTest, Test) { profile.GetHistoryService(Profile::EXPLICIT_ACCESS)->AddPage(url1, history::SOURCE_BROWSED); profile.GetFaviconService(Profile::EXPLICIT_ACCESS)->SetFavicon(url1, - url1_favicon, - icon_data); + url1_favicon, icon_data, history::FAVICON); message_loop.RunAllPending(); const BookmarkNode* f2 = model->AddGroup(f1, 1, f2_title); model->AddURLWithCreationTime(f2, 0, url2_title, url2, t2); @@ -221,8 +220,7 @@ TEST_F(BookmarkHTMLWriterTest, Test) { // Clear favicon so that it would be read from file. std::vector<unsigned char> empty_data; profile.GetFaviconService(Profile::EXPLICIT_ACCESS)->SetFavicon(url1, - url1_favicon, - empty_data); + url1_favicon, empty_data, history::FAVICON); message_loop.RunAllPending(); // Read the bookmarks back in. diff --git a/chrome/browser/bookmarks/bookmark_model.cc b/chrome/browser/bookmarks/bookmark_model.cc index 658f58a..230e9d1 100644 --- a/chrome/browser/bookmarks/bookmark_model.cc +++ b/chrome/browser/bookmarks/bookmark_model.cc @@ -736,19 +736,17 @@ BookmarkNode* BookmarkModel::CreateRootNodeFromStarredEntry( void BookmarkModel::OnFaviconDataAvailable( FaviconService::Handle handle, - bool know_favicon, - scoped_refptr<RefCountedMemory> data, - bool expired, - GURL icon_url) { - SkBitmap favicon; + history::FaviconData favicon) { + SkBitmap fav_icon; BookmarkNode* node = load_consumer_.GetClientData( profile_->GetFaviconService(Profile::EXPLICIT_ACCESS), handle); DCHECK(node); node->set_favicon_load_handle(0); - if (know_favicon && data.get() && data->size() && - gfx::PNGCodec::Decode(data->front(), data->size(), &favicon)) { - node->set_favicon(favicon); + if (favicon.is_valid() && gfx::PNGCodec::Decode(favicon.image_data->front(), + favicon.image_data->size(), + &fav_icon)) { + node->set_favicon(fav_icon); FaviconLoaded(node); } } @@ -763,7 +761,7 @@ void BookmarkModel::LoadFavicon(BookmarkNode* node) { if (!favicon_service) return; FaviconService::Handle handle = favicon_service->GetFaviconForURL( - node->GetURL(), &load_consumer_, + node->GetURL(), history::FAVICON, &load_consumer_, NewCallback(this, &BookmarkModel::OnFaviconDataAvailable)); load_consumer_.SetClientData(favicon_service, handle, node); node->set_favicon_load_handle(handle); diff --git a/chrome/browser/bookmarks/bookmark_model.h b/chrome/browser/bookmarks/bookmark_model.h index a7ccc43..e6268579 100644 --- a/chrome/browser/bookmarks/bookmark_model.h +++ b/chrome/browser/bookmarks/bookmark_model.h @@ -392,12 +392,8 @@ class BookmarkModel : public NotificationObserver, public BookmarkService { // Notification that a favicon has finished loading. If we can decode the // favicon, FaviconLoaded is invoked. - void OnFaviconDataAvailable( - FaviconService::Handle handle, - bool know_favicon, - scoped_refptr<RefCountedMemory> data, - bool expired, - GURL icon_url); + void OnFaviconDataAvailable(FaviconService::Handle handle, + history::FaviconData favicon); // Invoked from the node to load the favicon. Requests the favicon from the // favicon service. |