Index: components/autofill/core/browser/autocomplete_history_manager.cc |
diff --git a/components/autofill/core/browser/autocomplete_history_manager.cc b/components/autofill/core/browser/autocomplete_history_manager.cc |
index 8bc497051668ae2a6f381d9329c7d7375dc5591f..1f8fa94b055c6aeadc4405b8ac6c1b10a0a2bed9 100644 |
--- a/components/autofill/core/browser/autocomplete_history_manager.cc |
+++ b/components/autofill/core/browser/autocomplete_history_manager.cc |
@@ -82,17 +82,11 @@ void AutocompleteHistoryManager::OnGetAutocompleteSuggestions( |
const base::string16& name, |
const base::string16& prefix, |
const std::string& form_control_type, |
- const std::vector<base::string16>& autofill_values, |
- const std::vector<base::string16>& autofill_labels, |
- const std::vector<base::string16>& autofill_icons, |
- const std::vector<int>& autofill_unique_ids) { |
+ const std::vector<Suggestion>& suggestions) { |
CancelPendingQuery(); |
query_id_ = query_id; |
- autofill_values_ = autofill_values; |
- autofill_labels_ = autofill_labels; |
- autofill_icons_ = autofill_icons; |
- autofill_unique_ids_ = autofill_unique_ids; |
+ autofill_suggestions_ = suggestions; |
if (!autofill_client_->IsAutocompleteEnabled() || |
form_control_type == "textarea") { |
SendSuggestions(NULL); |
@@ -161,39 +155,28 @@ void AutocompleteHistoryManager::CancelPendingQuery() { |
} |
void AutocompleteHistoryManager::SendSuggestions( |
- const std::vector<base::string16>* suggestions) { |
- if (suggestions) { |
+ const std::vector<base::string16>* autocomplete_results) { |
+ if (autocomplete_results) { |
// Combine Autofill and Autocomplete values into values and labels. |
- for (size_t i = 0; i < suggestions->size(); ++i) { |
+ for (const auto& new_result : *autocomplete_results) { |
bool unique = true; |
- for (size_t j = 0; j < autofill_values_.size(); ++j) { |
+ for (const auto& autofill_suggestion : autofill_suggestions_) { |
// Don't add duplicate values. |
- if (autofill_values_[j] == (*suggestions)[i]) { |
+ if (new_result == autofill_suggestion.value) { |
unique = false; |
break; |
} |
} |
- if (unique) { |
- autofill_values_.push_back((*suggestions)[i]); |
- autofill_labels_.push_back(base::string16()); |
- autofill_icons_.push_back(base::string16()); |
- autofill_unique_ids_.push_back(0); // 0 means no profile. |
- } |
+ if (unique) |
+ autofill_suggestions_.push_back(Suggestion(new_result)); |
} |
} |
- external_delegate_->OnSuggestionsReturned(query_id_, |
- autofill_values_, |
- autofill_labels_, |
- autofill_icons_, |
- autofill_unique_ids_); |
+ external_delegate_->OnSuggestionsReturned(query_id_, autofill_suggestions_); |
query_id_ = 0; |
- autofill_values_.clear(); |
- autofill_labels_.clear(); |
- autofill_icons_.clear(); |
- autofill_unique_ids_.clear(); |
+ autofill_suggestions_.clear(); |
} |
} // namespace autofill |