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

Side by Side Diff: chrome/browser/icon_manager.cc

Issue 137263007: Move CancelableTaskTracker to //base/task/CancelableTaskTracker. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Move to base/task/cancelable_task_tracker* Created 6 years, 10 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
« no previous file with comments | « chrome/browser/icon_manager.h ('k') | chrome/browser/jumplist_win.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/icon_manager.h" 5 #include "chrome/browser/icon_manager.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/stl_util.h" 9 #include "base/stl_util.h"
10 #include "base/task_runner.h" 10 #include "base/task_runner.h"
11 #include "third_party/skia/include/core/SkBitmap.h" 11 #include "third_party/skia/include/core/SkBitmap.h"
12 #include "third_party/skia/include/core/SkCanvas.h" 12 #include "third_party/skia/include/core/SkCanvas.h"
13 13
14 namespace { 14 namespace {
15 15
16 void RunCallbackIfNotCanceled( 16 void RunCallbackIfNotCanceled(
17 const CancelableTaskTracker::IsCanceledCallback& is_canceled, 17 const base::CancelableTaskTracker::IsCanceledCallback& is_canceled,
18 const IconManager::IconRequestCallback& callback, 18 const IconManager::IconRequestCallback& callback,
19 gfx::Image* image) { 19 gfx::Image* image) {
20 if (is_canceled.Run()) 20 if (is_canceled.Run())
21 return; 21 return;
22 callback.Run(image); 22 callback.Run(image);
23 } 23 }
24 24
25 } // namespace 25 } // namespace
26 26
27 struct IconManager::ClientRequest { 27 struct IconManager::ClientRequest {
(...skipping 20 matching lines...) Expand all
48 48
49 gfx::Image* IconManager::LookupIconFromGroup(const IconGroupID& group, 49 gfx::Image* IconManager::LookupIconFromGroup(const IconGroupID& group,
50 IconLoader::IconSize size) { 50 IconLoader::IconSize size) {
51 IconMap::iterator it = icon_cache_.find(CacheKey(group, size)); 51 IconMap::iterator it = icon_cache_.find(CacheKey(group, size));
52 if (it != icon_cache_.end()) 52 if (it != icon_cache_.end())
53 return it->second; 53 return it->second;
54 54
55 return NULL; 55 return NULL;
56 } 56 }
57 57
58 CancelableTaskTracker::TaskId IconManager::LoadIcon( 58 base::CancelableTaskTracker::TaskId IconManager::LoadIcon(
59 const base::FilePath& file_name, 59 const base::FilePath& file_name,
60 IconLoader::IconSize size, 60 IconLoader::IconSize size,
61 const IconRequestCallback& callback, 61 const IconRequestCallback& callback,
62 CancelableTaskTracker* tracker) { 62 base::CancelableTaskTracker* tracker) {
63 IconLoader* loader = new IconLoader(file_name, size, this); 63 IconLoader* loader = new IconLoader(file_name, size, this);
64 loader->AddRef(); 64 loader->AddRef();
65 loader->Start(); 65 loader->Start();
66 66
67 CancelableTaskTracker::IsCanceledCallback is_canceled; 67 base::CancelableTaskTracker::IsCanceledCallback is_canceled;
68 CancelableTaskTracker::TaskId id = tracker->NewTrackedTaskId(&is_canceled); 68 base::CancelableTaskTracker::TaskId id =
69 tracker->NewTrackedTaskId(&is_canceled);
69 IconRequestCallback callback_runner = base::Bind( 70 IconRequestCallback callback_runner = base::Bind(
70 &RunCallbackIfNotCanceled, is_canceled, callback); 71 &RunCallbackIfNotCanceled, is_canceled, callback);
71 72
72 ClientRequest client_request = { callback_runner, file_name, size }; 73 ClientRequest client_request = { callback_runner, file_name, size };
73 requests_[loader] = client_request; 74 requests_[loader] = client_request;
74 return id; 75 return id;
75 } 76 }
76 77
77 // IconLoader::Delegate implementation ----------------------------------------- 78 // IconLoader::Delegate implementation -----------------------------------------
78 79
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 IconLoader::IconSize size) 139 IconLoader::IconSize size)
139 : group(group), 140 : group(group),
140 size(size) { 141 size(size) {
141 } 142 }
142 143
143 bool IconManager::CacheKey::operator<(const CacheKey &other) const { 144 bool IconManager::CacheKey::operator<(const CacheKey &other) const {
144 if (group != other.group) 145 if (group != other.group)
145 return group < other.group; 146 return group < other.group;
146 return size < other.size; 147 return size < other.size;
147 } 148 }
OLDNEW
« no previous file with comments | « chrome/browser/icon_manager.h ('k') | chrome/browser/jumplist_win.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698