Move IconLoader/Manager to OnceCallbacks.
BUG=none
TEST=existing tests
Change-Id: I65793a97dd3a3798014a39756441094fb4d4d4a7
Reviewed-on: https://chromium-review.googlesource.com/931624
Reviewed-by: Scott Violet <[email protected]>
Commit-Queue: Avi Drissman <[email protected]>
Cr-Commit-Position: refs/heads/master@{#538815}
diff --git a/chrome/browser/icon_manager.cc b/chrome/browser/icon_manager.cc
index 7b20ef3..b7fb7cc 100644
--- a/chrome/browser/icon_manager.cc
+++ b/chrome/browser/icon_manager.cc
@@ -16,11 +16,11 @@
void RunCallbackIfNotCanceled(
const base::CancelableTaskTracker::IsCanceledCallback& is_canceled,
- const IconManager::IconRequestCallback& callback,
+ IconManager::IconRequestCallback callback,
gfx::Image* image) {
if (is_canceled.Run())
return;
- callback.Run(image);
+ std::move(callback).Run(image);
}
} // namespace
@@ -47,18 +47,18 @@
base::CancelableTaskTracker::TaskId IconManager::LoadIcon(
const base::FilePath& file_path,
IconLoader::IconSize size,
- const IconRequestCallback& callback,
+ IconRequestCallback callback,
base::CancelableTaskTracker* tracker) {
base::CancelableTaskTracker::IsCanceledCallback is_canceled;
base::CancelableTaskTracker::TaskId id =
tracker->NewTrackedTaskId(&is_canceled);
- IconRequestCallback callback_runner = base::Bind(
- &RunCallbackIfNotCanceled, is_canceled, callback);
+ IconRequestCallback callback_runner = base::BindOnce(
+ &RunCallbackIfNotCanceled, is_canceled, std::move(callback));
IconLoader* loader = IconLoader::Create(
file_path, size,
- base::Bind(&IconManager::OnIconLoaded, weak_factory_.GetWeakPtr(),
- callback_runner, file_path, size));
+ base::BindOnce(&IconManager::OnIconLoaded, weak_factory_.GetWeakPtr(),
+ std::move(callback_runner), file_path, size));
loader->Start();
return id;
@@ -74,10 +74,10 @@
// null.
CacheKey key(group, size);
if (result) {
- callback.Run(result.get());
+ std::move(callback).Run(result.get());
icon_cache_[key] = std::move(result);
} else {
- callback.Run(nullptr);
+ std::move(callback).Run(nullptr);
icon_cache_.erase(key);
}