Chromium Code Reviews| Index: chrome/browser/icon_manager.h |
| diff --git a/chrome/browser/icon_manager.h b/chrome/browser/icon_manager.h |
| index 875c6d8ac15e770239a9d391d02fc0d0c34f7d42..b731865674f918dc3251b04ce5b83db1fc88f362 100644 |
| --- a/chrome/browser/icon_manager.h |
| +++ b/chrome/browser/icon_manager.h |
| @@ -47,14 +47,11 @@ |
| #include <map> |
| +#include "base/file_path.h" |
| #include "chrome/browser/icon_loader.h" |
| #include "chrome/common/cancelable_task_tracker.h" |
| #include "ui/gfx/image/image.h" |
| -namespace base { |
| -class FilePath; |
| -} |
| - |
| class IconManager : public IconLoader::Delegate { |
| public: |
| IconManager(); |
| @@ -65,7 +62,8 @@ class IconManager : public IconLoader::Delegate { |
| // it via 'LoadIcon'. The returned bitmap is owned by the IconManager and must |
| // not be free'd by the caller. If the caller needs to modify the icon, it |
| // must make a copy and modify the copy. |
| - gfx::Image* LookupIcon(const base::FilePath& file_name, IconLoader::IconSize size); |
| + gfx::Image* LookupIconFromFilepath(const base::FilePath& file_name, |
| + IconLoader::IconSize size); |
| typedef base::Callback<void(gfx::Image*)> IconRequestCallback; |
| @@ -85,11 +83,15 @@ class IconManager : public IconLoader::Delegate { |
| CancelableTaskTracker* tracker); |
| // IconLoader::Delegate interface. |
| - virtual bool OnImageLoaded(IconLoader* loader, gfx::Image* result) OVERRIDE; |
| + virtual bool OnGroupLoaded(IconLoader* loader, |
| + const IconGroupID& group) OVERRIDE; |
| + virtual bool OnImageLoaded(IconLoader* loader, |
| + gfx::Image* result, |
| + const IconGroupID& group) OVERRIDE; |
| // Get the identifying string for the given file. The implementation |
| // is in icon_manager_[platform].cc. |
| - static IconGroupID GetGroupIDFromFilepath(const base::FilePath& path); |
| + static IconGroupID ReadGroupIDFromFilepath(const base::FilePath& path); |
|
Robert Sesek
2013/02/21 21:07:10
Actually, why can't this now be implemented in ico
shatch
2013/03/08 18:34:57
Done.
|
| private: |
| struct CacheKey { |
| @@ -102,9 +104,15 @@ class IconManager : public IconLoader::Delegate { |
| IconLoader::IconSize size; |
| }; |
| + gfx::Image* LookupIconFromGroup(const IconGroupID& group, |
| + IconLoader::IconSize size); |
| + |
| typedef std::map<CacheKey, gfx::Image*> IconMap; |
| IconMap icon_cache_; |
| + typedef std::map<base::FilePath, IconGroupID> GroupMap; |
| + GroupMap group_cache_; |
| + |
| // Asynchronous requests that have not yet been completed. |
| struct ClientRequest; |
| typedef std::map<IconLoader*, ClientRequest> ClientRequests; |