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

Unified Diff: chrome/browser/history/history.h

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, 4 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/history/history.h
diff --git a/chrome/browser/history/history.h b/chrome/browser/history/history.h
index 69fda8bc97b9ddd6773302bc72290e5b8c5eef6b..2ee5afe07e08c04711a0913820d48baa2e63e775 100644
--- a/chrome/browser/history/history.h
+++ b/chrome/browser/history/history.h
@@ -686,34 +686,61 @@ class HistoryService : public CancelableRequestProvider,
// these methods directly you should call the respective method on the
// FaviconService.
- // Used by the FaviconService to get a favicon from the history backend.
- void GetFavicon(FaviconService::GetFaviconRequest* request,
- const GURL& icon_url,
+ // Used by FaviconService to get all the favicon bitmaps from the history
+ // backend for the favicons at |icon_urls|.
+ void GetFavicons(FaviconService::GetFaviconRequest* request,
+ const std::vector<GURL>& icon_urls,
history::IconType icon_type);
+ // Used by the FaviconService to get all the favicons mapped to |page_url|
+ // from the history backend.
sky 2012/08/21 20:16:56 Document icon_types
+ void GetFaviconsForURL(FaviconService::GetFaviconRequest* request,
+ const GURL& page_url,
+ int icon_types);
+
// Used by the FaviconService to update the favicon mappings on the history
+ // backend for favicons of type FAVICON.
sky 2012/08/21 20:16:56 This takes an icon_type.
+ // |icon_urls| is a list of all the favicon URLs known for |page_url|. It is
+ // important for this list to be complete as any favicons mapped to
+ // |page_url| whose icon URL is not in |icon_urls| will be deleted.
+ void UpdateFaviconMappingsAndFetch(FaviconService::GetFaviconRequest* request,
+ const GURL& page_url,
+ const std::vector<GURL>& icon_urls,
+ history::IconType icon_type);
+
+ // Used by the FaviconService to add favicons for a page on the history
+ // backend. This method queries for the IconURLSizesMap from |page_url|. If
+ // unavailable, a guess at what IconURLSizesMap should be is used. This
+ // function is inefficient. Do not use if at all possible.
+ // TODO(pkotwicz): Remove this function once it is no longer required by
+ // sync.
+ void AddFavicons(const GURL& page_url,
+ history::IconType icon_type,
+ const std::vector<history::FaviconDataElement>& elements);
+
+ // Used by the FaviconService to set the favicons for a page on the history
// backend.
- void UpdateFaviconMappingAndFetch(FaviconService::GetFaviconRequest* request,
- const GURL& page_url,
- const GURL& icon_url,
- history::IconType icon_type);
-
- // Used by the FaviconService to get a favicon from the history backend.
- void GetFaviconForURL(FaviconService::GetFaviconRequest* request,
- const GURL& page_url,
- int icon_types);
-
- // Used by the FaviconService to get a favicon from the history backend.
- void GetFaviconForID(FaviconService::GetFaviconRequest* request,
- history::FaviconID id);
-
- // Used by the FaviconService to mark the favicon for the page as being out
+ // |elements| is a listing of additional favicon bitmaps to store for
+ // |page_url|.
+ // |icon_url_sizes| is a mapping of all the icon urls of favicons available
+ // for |page_url| to the sizes that those favicons are available at from the
+ // web. |elements| does not need to have entries for all the icon urls or
+ // sizes listed in |icon_url_sizes|. However, the icon urls and sizes in
+ // |elements| must be a subset of |icon_url_sizes|. It is important that
+ // |icon_url_sizes| be complete as mappings to favicons whose icon url or
+ // pixel size is not in |icon_url_sizes| will be deleted.
+ void SetFavicons(const GURL& page_url,
+ history::IconType icon_type,
+ const std::vector<history::FaviconDataElement>& elements,
+ const history::IconURLSizesMap& icon_url_sizes);
+
+ // Used by the FaviconService to mark the favicons for the page as being out
// of date.
- void SetFaviconOutOfDateForPage(const GURL& page_url);
+ void SetFaviconsOutOfDateForPage(const GURL& page_url);
// Used by the FaviconService to clone favicons from one page to another,
// provided that other page does not already have favicons.
- void CloneFavicon(const GURL& old_page_url, const GURL& new_page_url);
+ void CloneFavicons(const GURL& old_page_url, const GURL& new_page_url);
// Used by the FaviconService for importing many favicons for many pages at
// once. The pages must exist, any favicon sets for unknown pages will be
@@ -721,14 +748,6 @@ class HistoryService : public CancelableRequestProvider,
void SetImportedFavicons(
const std::vector<history::ImportedFaviconUsage>& favicon_usage);
- // Used by the FaviconService to set the favicon for a page on the history
- // backend.
- void SetFavicon(const GURL& page_url,
- const GURL& icon_url,
- const std::vector<unsigned char>& image_data,
- history::IconType icon_type);
-
-
// Sets the in-memory URL database. This is called by the backend once the
// database is loaded to make it available.
void SetInMemoryBackend(int backend_id,

Powered by Google App Engine
This is Rietveld 408576698