Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(950)

Side by Side Diff: chrome/browser/favicon/select_favicon_frames.h

Issue 10802066: Adds support for saving favicon size into history database. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Updated comment for History::SetFavicons Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 #ifndef CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_ 5 #ifndef CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_
6 #define CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_ 6 #define CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "chrome/browser/history/history_types.h"
10 #include "ui/base/layout.h" 11 #include "ui/base/layout.h"
11 12
12 class SkBitmap; 13 class SkBitmap;
13 14
14 namespace gfx { 15 namespace gfx {
15 class ImageSkia; 16 class ImageSkia;
16 } 17 }
17 18
18 // Takes a list of all bitmaps found in a .ico file, and creates an 19 // Takes a list of all bitmaps found in a .ico file, and creates an
19 // ImageSkia that's desired_size x desired_size pixels big. This 20 // ImageSkia that's |desired_size| x |desired_size| DIP big. This
20 // function adds a representation at every desired scale factor. 21 // function adds a representation at every desired scale factor.
21 // If desired_size is 0, the largest bitmap is returned unmodified. 22 // If desired_size is 0, the largest bitmap is returned unmodified.
22 // If score is non-NULL, it receive a score between 0 (bad) and 1 (good) 23 // If score is non-NULL, it receives a score between 0 (bad) and 1 (good)
23 // that describes how well |bitmaps| were able to produce an image at 24 // that describes how well |bitmaps| were able to produce an image at
24 // |desired_size| for |scale_factors|. 25 // |desired_size| for |scale_factors|.
25 // The score is arbitrary, but it's best for exact size matches, 26 // The score is arbitrary, but it's best for exact size matches,
26 // and gets worse the more resampling needs to happen. 27 // and gets worse the more resampling needs to happen.
27 gfx::ImageSkia SelectFaviconFrames( 28 gfx::ImageSkia SelectFaviconFrames(
28 const std::vector<SkBitmap>& bitmaps, 29 const std::vector<SkBitmap>& bitmaps,
29 const std::vector<ui::ScaleFactor>& scale_factors, 30 const std::vector<ui::ScaleFactor>& scale_factors,
30 int desired_size, 31 int desired_size,
31 float* score); 32 float* score);
32 33
34 // Takes a list of all history::FaviconBitmapIDSize for a favicon and returns
35 // the FaviconBitmapIDs (in |filtered_favicon_bitmap_ids|) whose bitmap data
36 // should be fetched in order to create an ImageSkia that's |desired_size| x
37 // |desired_size| DIP big.
38 // If desired_size is 0, the FaviconBitmapID with the largest size is returned.
39 // If score is non-NULL, it receives a score between 0 (bad) and 1 (good)
40 // that describes how well |filtered_favicon_bitmap_ids| will produce an image
41 // at |desired_size| for |scale_factors|.
42 // The score is arbitrary, but it's best for exact size matches,
43 // and gets worse the more resampling needs to happen.
44 // TODO(pkotwicz): Remove need to pass in |scale_factors|.
45 void SelectFaviconBitmapIDs(
46 const std::vector<history::FaviconBitmapIDSize>& bitmap_id_sizes,
47 const std::vector<ui::ScaleFactor>& scale_factors,
48 int desired_size,
49 std::vector<history::FaviconBitmapID>* filtered_favicon_bitmap_ids,
50 float* score);
51
33 #endif // CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_ 52 #endif // CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698