| Index: chrome/browser/favicon/favicon_util.cc
|
| diff --git a/chrome/browser/favicon/favicon_util.cc b/chrome/browser/favicon/favicon_util.cc
|
| index 83a9fa9e728188bd6abb1ddd6aa6e71abe07e009..6189afd3f9677f788148791cc6904ab183af598d 100644
|
| --- a/chrome/browser/favicon/favicon_util.cc
|
| +++ b/chrome/browser/favicon/favicon_util.cc
|
| @@ -13,6 +13,30 @@
|
| #include "ui/gfx/image/image_skia.h"
|
|
|
| // static
|
| +std::vector<ui::ScaleFactor> FaviconUtil::GetFaviconScaleFactors() {
|
| + const float kScale1x = ui::GetScaleFactorScale(ui::SCALE_FACTOR_100P);
|
| + std::vector<ui::ScaleFactor> favicon_scale_factors =
|
| + ui::GetSupportedScaleFactors();
|
| +
|
| + // The scale factors returned from ui::GetSupportedScaleFactors() are sorted.
|
| + // Insert the 1x scale factor such that GetFaviconScaleFactors() is sorted as
|
| + // well.
|
| + size_t insert_index = favicon_scale_factors.size();
|
| + for (size_t i = 0; i < favicon_scale_factors.size(); ++i) {
|
| + float scale = ui::GetScaleFactorScale(favicon_scale_factors[i]);
|
| + if (scale == kScale1x) {
|
| + return favicon_scale_factors;
|
| + } else if (scale > kScale1x) {
|
| + insert_index = i;
|
| + break;
|
| + }
|
| + }
|
| + favicon_scale_factors.insert(favicon_scale_factors.begin() + insert_index,
|
| + ui::SCALE_FACTOR_100P);
|
| + return favicon_scale_factors;
|
| +}
|
| +
|
| +// static
|
| int FaviconUtil::DownloadFavicon(content::RenderViewHost* rvh,
|
| const GURL& url,
|
| int image_size) {
|
| @@ -43,6 +67,6 @@ gfx::Image FaviconUtil::SelectFaviconFramesFromPNGs(
|
| return gfx::Image();
|
|
|
| gfx::ImageSkia resized_image_skia = SelectFaviconFrames(bitmaps,
|
| - ui::GetSupportedScaleFactors(), favicon_size, NULL);
|
| + scale_factors, favicon_size, NULL);
|
| return gfx::Image(resized_image_skia);
|
| }
|
|
|