| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/extensions/extension_web_ui.h" | 5 #include "chrome/browser/extensions/extension_web_ui.h" |
| 6 | 6 |
| 7 #include <set> | 7 #include <set> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/string_util.h" | 10 #include "base/string_util.h" |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 81 ExtensionIconSet::MATCH_EXACTLY); | 81 ExtensionIconSet::MATCH_EXACTLY); |
| 82 | 82 |
| 83 tracker_.LoadImage(extension_, icon_resource, | 83 tracker_.LoadImage(extension_, icon_resource, |
| 84 gfx::Size(gfx::kFaviconSize, gfx::kFaviconSize), | 84 gfx::Size(gfx::kFaviconSize, gfx::kFaviconSize), |
| 85 ImageLoadingTracker::DONT_CACHE); | 85 ImageLoadingTracker::DONT_CACHE); |
| 86 } else { | 86 } else { |
| 87 ForwardResult(NULL); | 87 ForwardResult(NULL); |
| 88 } | 88 } |
| 89 } | 89 } |
| 90 | 90 |
| 91 virtual void OnImageLoaded(SkBitmap* image, const ExtensionResource& resource, | 91 virtual void OnImageLoaded(const gfx::Image& image, |
| 92 int index) { | 92 const std::string& extension_id, |
| 93 if (image) { | 93 int index) OVERRIDE { |
| 94 if (!image.IsEmpty()) { |
| 94 std::vector<unsigned char> image_data; | 95 std::vector<unsigned char> image_data; |
| 95 if (!gfx::PNGCodec::EncodeBGRASkBitmap(*image, false, &image_data)) { | 96 if (!gfx::PNGCodec::EncodeBGRASkBitmap(*image.ToSkBitmap(), false, |
| 97 &image_data)) { |
| 96 NOTREACHED() << "Could not encode extension favicon"; | 98 NOTREACHED() << "Could not encode extension favicon"; |
| 97 } | 99 } |
| 98 ForwardResult(RefCountedBytes::TakeVector(&image_data)); | 100 ForwardResult(RefCountedBytes::TakeVector(&image_data)); |
| 99 } else { | 101 } else { |
| 100 ForwardResult(NULL); | 102 ForwardResult(NULL); |
| 101 } | 103 } |
| 102 } | 104 } |
| 103 | 105 |
| 104 private: | 106 private: |
| 105 ~ExtensionWebUIImageLoadingTracker() {} | 107 ~ExtensionWebUIImageLoadingTracker() {} |
| (...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 413 } | 415 } |
| 414 | 416 |
| 415 // static | 417 // static |
| 416 void ExtensionWebUI::GetFaviconForURL(Profile* profile, | 418 void ExtensionWebUI::GetFaviconForURL(Profile* profile, |
| 417 FaviconService::GetFaviconRequest* request, const GURL& page_url) { | 419 FaviconService::GetFaviconRequest* request, const GURL& page_url) { |
| 418 // tracker deletes itself when done. | 420 // tracker deletes itself when done. |
| 419 ExtensionWebUIImageLoadingTracker* tracker = | 421 ExtensionWebUIImageLoadingTracker* tracker = |
| 420 new ExtensionWebUIImageLoadingTracker(profile, request, page_url); | 422 new ExtensionWebUIImageLoadingTracker(profile, request, page_url); |
| 421 tracker->Init(); | 423 tracker->Init(); |
| 422 } | 424 } |
| OLD | NEW |