| Index: chrome/browser/icon_loader_mac.mm
|
| diff --git a/chrome/browser/icon_loader_mac.mm b/chrome/browser/icon_loader_mac.mm
|
| index 83a8305df72992896035ca2095dd07276051ba56..744b6cb338c83f6805db5c886194f6732fff7aa6 100644
|
| --- a/chrome/browser/icon_loader_mac.mm
|
| +++ b/chrome/browser/icon_loader_mac.mm
|
| @@ -4,11 +4,28 @@
|
|
|
| #include "chrome/browser/icon_loader.h"
|
|
|
| +#import <AppKit/AppKit.h>
|
| +
|
| #include "base/message_loop.h"
|
| #include "base/thread.h"
|
| +#include "base/sys_string_conversions.h"
|
| +#include "skia/ext/skia_utils_mac.h"
|
| +#include "third_party/skia/include/core/SkBitmap.h"
|
|
|
| void IconLoader::ReadIcon() {
|
| - NOTIMPLEMENTED();
|
| + NSString* group = base::SysUTF8ToNSString(group_);
|
| + NSWorkspace* workspace = [NSWorkspace sharedWorkspace];
|
| + NSImage* icon = [workspace iconForFileType:group];
|
| +
|
| + NSSize size;
|
| + if (icon_size_ == NORMAL)
|
| + size = NSMakeSize(32, 32);
|
| + else if (icon_size_ == SMALL)
|
| + size = NSMakeSize(16, 16);
|
| + else
|
| + return;
|
| +
|
| + bitmap_ = new SkBitmap(gfx::NSImageToSkBitmap(icon, size, false));
|
|
|
| target_message_loop_->PostTask(FROM_HERE,
|
| NewRunnableMethod(this, &IconLoader::NotifyDelegate));
|
|
|