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

Unified Diff: components/favicon/core/large_icon_service.cc

Issue 1318523011: [Password Manager] Copiable username and origin. Linkable origin elided from the left. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Icons appearance fixed Created 5 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: components/favicon/core/large_icon_service.cc
diff --git a/components/favicon/core/large_icon_service.cc b/components/favicon/core/large_icon_service.cc
index 57953b271d9fe6d9cba00fb2555efc346abf9a59..5a9e1d2586881230a3f7dda2dd393d26c08e5e64 100644
--- a/components/favicon/core/large_icon_service.cc
+++ b/components/favicon/core/large_icon_service.cc
@@ -26,6 +26,7 @@ class LargeIconWorker : public base::RefCountedThreadSafe<LargeIconWorker> {
public:
LargeIconWorker(int min_source_size_in_pixel,
int desired_size_in_pixel,
+ const favicon_base::FallbackIconStyle& fallback_icon_style,
favicon_base::LargeIconCallback callback,
scoped_refptr<base::TaskRunner> background_task_runner,
base::CancelableTaskTracker* tracker);
@@ -63,6 +64,7 @@ class LargeIconWorker : public base::RefCountedThreadSafe<LargeIconWorker> {
int min_source_size_in_pixel_;
int desired_size_in_pixel_;
+ favicon_base::FallbackIconStyle fallback_icon_style_;
favicon_base::LargeIconCallback callback_;
scoped_refptr<base::TaskRunner> background_task_runner_;
base::CancelableTaskTracker* tracker_;
@@ -75,15 +77,16 @@ class LargeIconWorker : public base::RefCountedThreadSafe<LargeIconWorker> {
LargeIconWorker::LargeIconWorker(
int min_source_size_in_pixel,
int desired_size_in_pixel,
+ const favicon_base::FallbackIconStyle& fallback_icon_style,
favicon_base::LargeIconCallback callback,
scoped_refptr<base::TaskRunner> background_task_runner,
base::CancelableTaskTracker* tracker)
: min_source_size_in_pixel_(min_source_size_in_pixel),
desired_size_in_pixel_(desired_size_in_pixel),
+ fallback_icon_style_(fallback_icon_style),
callback_(callback),
background_task_runner_(background_task_runner),
- tracker_(tracker) {
-}
+ tracker_(tracker) {}
LargeIconWorker::~LargeIconWorker() {
}
@@ -103,15 +106,15 @@ void LargeIconWorker::ProcessIconOnBackgroundThread() {
result_.reset(
new favicon_base::LargeIconResult(resized_bitmap_result));
} else {
- // Failed to resize |bitmap_result_|, so compute fallback icon style.
- scoped_ptr<favicon_base::FallbackIconStyle> fallback_icon_style(
- new favicon_base::FallbackIconStyle());
+ // Failed to resize |bitmap_result_|, so send fallback icon style.
+ favicon_base::FallbackIconStyle* style =
+ new favicon_base::FallbackIconStyle();
+ *style = fallback_icon_style_;
if (bitmap_result_.is_valid()) {
- favicon_base::SetDominantColorAsBackground(
- bitmap_result_.bitmap_data, fallback_icon_style.get());
+ favicon_base::SetDominantColorAsBackground(bitmap_result_.bitmap_data,
+ style);
}
- result_.reset(
- new favicon_base::LargeIconResult(fallback_icon_style.release()));
+ result_.reset(new favicon_base::LargeIconResult(style));
}
}
@@ -176,18 +179,19 @@ LargeIconService::~LargeIconService() {
}
base::CancelableTaskTracker::TaskId
- LargeIconService::GetLargeIconOrFallbackStyle(
- const GURL& page_url,
- int min_source_size_in_pixel,
- int desired_size_in_pixel,
- const favicon_base::LargeIconCallback& callback,
- base::CancelableTaskTracker* tracker) {
+LargeIconService::GetLargeIconOrFallbackStyle(
+ const GURL& page_url,
+ int min_source_size_in_pixel,
+ int desired_size_in_pixel,
+ const favicon_base::FallbackIconStyle& fallback_icon_style,
+ const favicon_base::LargeIconCallback& callback,
+ base::CancelableTaskTracker* tracker) {
DCHECK_LE(1, min_source_size_in_pixel);
DCHECK_LE(0, desired_size_in_pixel);
- scoped_refptr<LargeIconWorker> worker =
- new LargeIconWorker(min_source_size_in_pixel, desired_size_in_pixel,
- callback, background_task_runner_, tracker);
+ scoped_refptr<LargeIconWorker> worker = new LargeIconWorker(
+ min_source_size_in_pixel, desired_size_in_pixel, fallback_icon_style,
+ callback, background_task_runner_, tracker);
// TODO(beaudoin): For now this is just a wrapper around
// GetLargestRawFaviconForPageURL. Add the logic required to select the best

Powered by Google App Engine
This is Rietveld 408576698