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

Side by Side Diff: components/favicon/core/favicon_service_impl.cc

Issue 2739173002: Always select best favicon bitmap (Closed)
Patch Set: Updated. Created 3 years, 9 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
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 #include "components/favicon/core/favicon_service_impl.h" 5 #include "components/favicon/core/favicon_service_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <cmath> 8 #include <cmath>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 std::vector<int> desired_sizes_in_pixel; 80 std::vector<int> desired_sizes_in_pixel;
81 desired_sizes_in_pixel.push_back(desired_size_in_pixel); 81 desired_sizes_in_pixel.push_back(desired_size_in_pixel);
82 82
83 return history_service_->GetFavicons( 83 return history_service_->GetFavicons(
84 icon_urls, icon_type, desired_sizes_in_pixel, callback_runner, tracker); 84 icon_urls, icon_type, desired_sizes_in_pixel, callback_runner, tracker);
85 } 85 }
86 86
87 base::CancelableTaskTracker::TaskId FaviconServiceImpl::GetFavicon( 87 base::CancelableTaskTracker::TaskId FaviconServiceImpl::GetFavicon(
88 const GURL& icon_url, 88 const GURL& icon_url,
89 favicon_base::IconType icon_type, 89 favicon_base::IconType icon_type,
90 int desired_size_in_dip, 90 const std::vector<int>& desired_sizes_in_pixel,
91 const favicon_base::FaviconResultsCallback& callback, 91 const favicon_base::FaviconResultsCallback& callback,
92 base::CancelableTaskTracker* tracker) { 92 base::CancelableTaskTracker* tracker) {
93 TRACE_EVENT0("browser", "FaviconServiceImpl::GetFavicon"); 93 TRACE_EVENT0("browser", "FaviconServiceImpl::GetFavicon");
94 std::vector<GURL> icon_urls; 94 std::vector<GURL> icon_urls;
95 icon_urls.push_back(icon_url); 95 icon_urls.push_back(icon_url);
96 return history_service_->GetFavicons( 96 return history_service_->GetFavicons(icon_urls, icon_type,
97 icon_urls, icon_type, GetPixelSizesForFaviconScales(desired_size_in_dip), 97 desired_sizes_in_pixel, callback,
98 callback, tracker); 98 tracker);
99 } 99 }
100 100
101 base::CancelableTaskTracker::TaskId 101 base::CancelableTaskTracker::TaskId
102 FaviconServiceImpl::GetFaviconImageForPageURL( 102 FaviconServiceImpl::GetFaviconImageForPageURL(
103 const GURL& page_url, 103 const GURL& page_url,
104 const favicon_base::FaviconImageCallback& callback, 104 const favicon_base::FaviconImageCallback& callback,
105 base::CancelableTaskTracker* tracker) { 105 base::CancelableTaskTracker* tracker) {
106 TRACE_EVENT0("browser", "FaviconServiceImpl::GetFaviconImageForPageURL"); 106 TRACE_EVENT0("browser", "FaviconServiceImpl::GetFaviconImageForPageURL");
107 return GetFaviconForPageURLImpl( 107 return GetFaviconForPageURLImpl(
108 page_url, favicon_base::FAVICON, 108 page_url, favicon_base::FAVICON,
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 return favicon_client_->GetFaviconForNativeApplicationURL( 146 return favicon_client_->GetFaviconForNativeApplicationURL(
147 page_url, desired_sizes_in_pixel, favicon_results_callback, tracker); 147 page_url, desired_sizes_in_pixel, favicon_results_callback, tracker);
148 } 148 }
149 return history_service_->GetLargestFaviconForURL( 149 return history_service_->GetLargestFaviconForURL(
150 page_url, icon_types, minimum_size_in_pixels, callback, tracker); 150 page_url, icon_types, minimum_size_in_pixels, callback, tracker);
151 } 151 }
152 152
153 base::CancelableTaskTracker::TaskId FaviconServiceImpl::GetFaviconForPageURL( 153 base::CancelableTaskTracker::TaskId FaviconServiceImpl::GetFaviconForPageURL(
154 const GURL& page_url, 154 const GURL& page_url,
155 int icon_types, 155 int icon_types,
156 int desired_size_in_dip, 156 const std::vector<int>& desired_sizes_in_pixel,
157 const favicon_base::FaviconResultsCallback& callback, 157 const favicon_base::FaviconResultsCallback& callback,
158 base::CancelableTaskTracker* tracker) { 158 base::CancelableTaskTracker* tracker) {
159 TRACE_EVENT0("browser", "FaviconServiceImpl::GetFaviconForPageURL"); 159 TRACE_EVENT0("browser", "FaviconServiceImpl::GetFaviconForPageURL");
160 return GetFaviconForPageURLImpl( 160 return GetFaviconForPageURLImpl(page_url, icon_types, desired_sizes_in_pixel,
161 page_url, icon_types, GetPixelSizesForFaviconScales(desired_size_in_dip), 161 callback, tracker);
162 callback, tracker);
163 } 162 }
164 163
165 base::CancelableTaskTracker::TaskId 164 base::CancelableTaskTracker::TaskId
166 FaviconServiceImpl::UpdateFaviconMappingsAndFetch( 165 FaviconServiceImpl::UpdateFaviconMappingsAndFetch(
167 const GURL& page_url, 166 const GURL& page_url,
168 const std::vector<GURL>& icon_urls, 167 const std::vector<GURL>& icon_urls,
169 int icon_types, 168 int icon_types,
170 int desired_size_in_dip, 169 const std::vector<int>& desired_sizes_in_pixel,
171 const favicon_base::FaviconResultsCallback& callback, 170 const favicon_base::FaviconResultsCallback& callback,
172 base::CancelableTaskTracker* tracker) { 171 base::CancelableTaskTracker* tracker) {
173 return history_service_->UpdateFaviconMappingsAndFetch( 172 return history_service_->UpdateFaviconMappingsAndFetch(
174 page_url, icon_urls, icon_types, 173 page_url, icon_urls, icon_types, desired_sizes_in_pixel, callback,
175 GetPixelSizesForFaviconScales(desired_size_in_dip), callback, tracker); 174 tracker);
176 } 175 }
177 176
178 base::CancelableTaskTracker::TaskId 177 base::CancelableTaskTracker::TaskId
179 FaviconServiceImpl::GetLargestRawFaviconForID( 178 FaviconServiceImpl::GetLargestRawFaviconForID(
180 favicon_base::FaviconID favicon_id, 179 favicon_base::FaviconID favicon_id,
181 const favicon_base::FaviconRawBitmapCallback& callback, 180 const favicon_base::FaviconRawBitmapCallback& callback,
182 base::CancelableTaskTracker* tracker) { 181 base::CancelableTaskTracker* tracker) {
183 TRACE_EVENT0("browser", "FaviconServiceImpl::GetLargestRawFaviconForID"); 182 TRACE_EVENT0("browser", "FaviconServiceImpl::GetLargestRawFaviconForID");
184 // Use 0 as |desired_size| to get the largest bitmap for |favicon_id| without 183 // Use 0 as |desired_size| to get the largest bitmap for |favicon_id| without
185 // any resizing. 184 // any resizing.
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 const std::vector<favicon_base::FaviconRawBitmapResult>& 285 const std::vector<favicon_base::FaviconRawBitmapResult>&
287 favicon_bitmap_results) { 286 favicon_bitmap_results) {
288 TRACE_EVENT0( 287 TRACE_EVENT0(
289 "browser", 288 "browser",
290 "FaviconServiceImpl::RunFaviconRawBitmapCallbackWithBitmapResults"); 289 "FaviconServiceImpl::RunFaviconRawBitmapCallbackWithBitmapResults");
291 callback.Run( 290 callback.Run(
292 ResizeFaviconBitmapResult(favicon_bitmap_results, desired_size_in_pixel)); 291 ResizeFaviconBitmapResult(favicon_bitmap_results, desired_size_in_pixel));
293 } 292 }
294 293
295 } // namespace favicon 294 } // namespace favicon
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698