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

Unified Diff: chrome/browser/ui/intents/web_intent_picker_controller.cc

Issue 10825352: Change picker model API to allow less notification messages (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 4 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: chrome/browser/ui/intents/web_intent_picker_controller.cc
diff --git a/chrome/browser/ui/intents/web_intent_picker_controller.cc b/chrome/browser/ui/intents/web_intent_picker_controller.cc
index 4a05ab5539066636c6b46a98f5f97f04ec81a09e..4b537de9c8e3098b45aa5c81a49cdef07c42d489 100644
--- a/chrome/browser/ui/intents/web_intent_picker_controller.cc
+++ b/chrome/browser/ui/intents/web_intent_picker_controller.cc
@@ -605,17 +605,19 @@ void WebIntentPickerController::OnCWSIntentServicesAvailable(
const CWSIntentsRegistry::IntentExtensionList& extensions) {
ExtensionServiceInterface* extension_service =
tab_contents_->profile()->GetExtensionService();
+
+ std::vector<WebIntentPickerModel::SuggestedExtension> suggestions;
for (size_t i = 0; i < extensions.size(); ++i) {
const CWSIntentsRegistry::IntentExtensionInfo& info = extensions[i];
+
+ // Do not include suggestions for already installed extensions.
if (extension_service->GetExtensionById(UTF16ToUTF8(info.id),
- true)) { // Include disabled.
+ true)) {
continue;
}
- picker_model_->AddSuggestedExtension(
- info.name,
- info.id,
- info.average_rating);
+ suggestions.push_back(WebIntentPickerModel::SuggestedExtension(
+ info.name, info.id, info.average_rating));
pending_async_count_++;
net::URLFetcher* icon_url_fetcher = net::URLFetcher::Create(
@@ -634,6 +636,8 @@ void WebIntentPickerController::OnCWSIntentServicesAvailable(
icon_url_fetcher->Start();
}
+ picker_model_->AddSuggestedExtensions(suggestions);
+
AsyncOperationFinished();
}

Powered by Google App Engine
This is Rietveld 408576698