Chromium Code Reviews| Index: chrome/browser/autofill/autofill_external_delegate.cc | 
| diff --git a/chrome/browser/autofill/autofill_external_delegate.cc b/chrome/browser/autofill/autofill_external_delegate.cc | 
| index c20ad81f7682b2a18aa577bc2c277a09eaee29e8..ccb09eae0fff0760e2f6bac3012175b5881b7cf5 100644 | 
| --- a/chrome/browser/autofill/autofill_external_delegate.cc | 
| +++ b/chrome/browser/autofill/autofill_external_delegate.cc | 
| @@ -68,14 +68,6 @@ AutofillExternalDelegate::~AutofillExternalDelegate() { | 
| controller_->Hide(); | 
| } | 
| -void AutofillExternalDelegate::SelectAutofillSuggestionAtIndex(int unique_id) { | 
| - ClearPreviewedForm(); | 
| - | 
| - // Only preview the data if it is a profile. | 
| - if (unique_id > 0) | 
| - FillAutofillFormData(unique_id, true); | 
| -} | 
| - | 
| void AutofillExternalDelegate::OnQuery(int query_id, | 
| const FormData& form, | 
| const FormFieldData& field, | 
| @@ -205,60 +197,59 @@ void AutofillExternalDelegate::SetCurrentDataListValues( | 
| data_list_unique_ids_ = data_list_unique_ids; | 
| } | 
| -void AutofillExternalDelegate::RemoveAutocompleteEntry(const string16& value) { | 
| - if (web_contents_) { | 
| - autofill_manager_->RemoveAutocompleteEntry( | 
| - autofill_query_field_.name, value); | 
| - } | 
| -} | 
| - | 
| -void AutofillExternalDelegate::RemoveAutofillProfileOrCreditCard( | 
| - int unique_id) { | 
| - autofill_manager_->RemoveAutofillProfileOrCreditCard(unique_id); | 
| -} | 
| - | 
| -void AutofillExternalDelegate::DidEndTextFieldEditing() { | 
| - HideAutofillPopup(); | 
| +void AutofillExternalDelegate::DidSelectSuggestion(int identifier) { | 
| + ClearPreviewedForm(); | 
| - has_shown_autofill_popup_for_current_edit_ = false; | 
| + // Only preview the data if it is a profile. | 
| + if (identifier > 0) | 
| + FillAutofillFormData(identifier, true); | 
| } | 
| -bool AutofillExternalDelegate::DidAcceptAutofillSuggestion( | 
| - const string16& value, | 
| - int unique_id, | 
| - unsigned index) { | 
| - // If the selected element is a warning we don't want to do anything. | 
| - if (unique_id == WebAutofillClient::MenuItemIDWarningMessage) | 
| - return false; | 
| - | 
| +void AutofillExternalDelegate::DidAcceptSuggestion(const string16& value, | 
| + int identifier) { | 
| RenderViewHost* host = web_contents_->GetRenderViewHost(); | 
| - if (unique_id == WebAutofillClient::MenuItemIDAutofillOptions) { | 
| + if (identifier == WebAutofillClient::MenuItemIDAutofillOptions) { | 
| // User selected 'Autofill Options'. | 
| autofill_manager_->OnShowAutofillDialog(); | 
| - } else if (unique_id == WebAutofillClient::MenuItemIDClearForm) { | 
| + } else if (identifier == WebAutofillClient::MenuItemIDClearForm) { | 
| // User selected 'Clear form'. | 
| host->Send(new AutofillMsg_ClearForm(host->GetRoutingID())); | 
| - } else if (unique_id == WebAutofillClient::MenuItemIDPasswordEntry && | 
| + } else if (identifier == WebAutofillClient::MenuItemIDPasswordEntry && | 
| password_autofill_manager_.DidAcceptAutofillSuggestion( | 
| autofill_query_field_, value)) { | 
| // DidAcceptAutofillSuggestion has already handled the work to fill in | 
| // the page as required. | 
| - } else if (unique_id == WebAutofillClient::MenuItemIDDataListEntry) { | 
| + } else if (identifier == WebAutofillClient::MenuItemIDDataListEntry) { | 
| host->Send(new AutofillMsg_AcceptDataListSuggestion(host->GetRoutingID(), | 
| value)); | 
| - } else if (unique_id == WebAutofillClient::MenuItemIDAutocompleteEntry) { | 
| + } else if (identifier == WebAutofillClient::MenuItemIDAutocompleteEntry) { | 
| // User selected an Autocomplete, so we fill directly. | 
| host->Send(new AutofillMsg_SetNodeText( | 
| host->GetRoutingID(), | 
| value)); | 
| } else { | 
| - FillAutofillFormData(unique_id, false); | 
| + FillAutofillFormData(identifier, false); | 
| } | 
| HideAutofillPopup(); | 
| +} | 
| - return true; | 
| +void AutofillExternalDelegate::RemoveSuggestion(int identifier) { | 
| + autofill_manager_->RemoveAutofillProfileOrCreditCard(identifier); | 
| +} | 
| + | 
| +void AutofillExternalDelegate::RemoveAutocompleteEntry(const string16& value) { | 
| + if (web_contents_) { | 
| 
 
Ilya Sherman
2012/12/20 21:57:42
Hmm, why is it relevant whether we have a WebConte
 
 | 
| + autofill_manager_->RemoveAutocompleteEntry( | 
| + autofill_query_field_.name, value); | 
| + } | 
| +} | 
| + | 
| +void AutofillExternalDelegate::DidEndTextFieldEditing() { | 
| + HideAutofillPopup(); | 
| + | 
| + has_shown_autofill_popup_for_current_edit_ = false; | 
| } | 
| void AutofillExternalDelegate::ClearPreviewedForm() { |