| Index: chrome/browser/icon_manager.h
|
| diff --git a/chrome/browser/icon_manager.h b/chrome/browser/icon_manager.h
|
| index 875c6d8ac15e770239a9d391d02fc0d0c34f7d42..dafd147821140b7278d2f91e32363b5c4b48ef57 100644
|
| --- a/chrome/browser/icon_manager.h
|
| +++ b/chrome/browser/icon_manager.h
|
| @@ -47,14 +47,11 @@
|
|
|
| #include <map>
|
|
|
| +#include "base/files/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,11 @@ class IconManager : public IconLoader::Delegate {
|
| CancelableTaskTracker* tracker);
|
|
|
| // IconLoader::Delegate interface.
|
| - virtual bool OnImageLoaded(IconLoader* loader, gfx::Image* result) OVERRIDE;
|
| -
|
| - // Get the identifying string for the given file. The implementation
|
| - // is in icon_manager_[platform].cc.
|
| - static IconGroupID GetGroupIDFromFilepath(const base::FilePath& path);
|
| + virtual bool OnGroupLoaded(IconLoader* loader,
|
| + const IconGroupID& group) OVERRIDE;
|
| + virtual bool OnImageLoaded(IconLoader* loader,
|
| + gfx::Image* result,
|
| + const IconGroupID& group) OVERRIDE;
|
|
|
| private:
|
| struct CacheKey {
|
| @@ -102,9 +100,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;
|
|
|