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

Side by Side Diff: chrome/browser/ui/autofill/autofill_dialog_controller_impl.cc

Issue 306053008: Rename AutofillManagerDelegate to AutofillClient. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 6 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/ui/autofill/autofill_dialog_controller_impl.h" 5 #include "chrome/browser/ui/autofill/autofill_dialog_controller_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <map> 8 #include <map>
9 #include <string> 9 #include <string>
10 10
(...skipping 649 matching lines...) Expand 10 before | Expand all | Expand 10 after
660 if (!possible_values.empty() && 660 if (!possible_values.empty() &&
661 !possible_values.count(base::ASCIIToUTF16(country_code))) { 661 !possible_values.count(base::ASCIIToUTF16(country_code))) {
662 return false; 662 return false;
663 } 663 }
664 664
665 return true; 665 return true;
666 } 666 }
667 667
668 // static 668 // static
669 base::WeakPtr<AutofillDialogControllerImpl> 669 base::WeakPtr<AutofillDialogControllerImpl>
670 AutofillDialogControllerImpl::Create( 670 AutofillDialogControllerImpl::Create(
671 content::WebContents* contents, 671 content::WebContents* contents,
672 const FormData& form_structure, 672 const FormData& form_structure,
673 const GURL& source_url, 673 const GURL& source_url,
674 const AutofillManagerDelegate::ResultCallback& callback) { 674 const AutofillClient::ResultCallback& callback) {
675 // AutofillDialogControllerImpl owns itself. 675 // AutofillDialogControllerImpl owns itself.
676 AutofillDialogControllerImpl* autofill_dialog_controller = 676 AutofillDialogControllerImpl* autofill_dialog_controller =
677 new AutofillDialogControllerImpl(contents, 677 new AutofillDialogControllerImpl(contents,
678 form_structure, 678 form_structure,
679 source_url, 679 source_url,
680 callback); 680 callback);
681 return autofill_dialog_controller->weak_ptr_factory_.GetWeakPtr(); 681 return autofill_dialog_controller->weak_ptr_factory_.GetWeakPtr();
682 } 682 }
683 683
684 // static 684 // static
(...skipping 19 matching lines...) Expand all
704 ::prefs::kAutofillDialogWalletShippingSameAsBilling, 704 ::prefs::kAutofillDialogWalletShippingSameAsBilling,
705 false, 705 false,
706 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); 706 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
707 } 707 }
708 708
709 // static 709 // static
710 base::WeakPtr<AutofillDialogController> AutofillDialogController::Create( 710 base::WeakPtr<AutofillDialogController> AutofillDialogController::Create(
711 content::WebContents* contents, 711 content::WebContents* contents,
712 const FormData& form_structure, 712 const FormData& form_structure,
713 const GURL& source_url, 713 const GURL& source_url,
714 const AutofillManagerDelegate::ResultCallback& callback) { 714 const AutofillClient::ResultCallback& callback) {
715 return AutofillDialogControllerImpl::Create(contents, 715 return AutofillDialogControllerImpl::Create(contents,
716 form_structure, 716 form_structure,
717 source_url, 717 source_url,
718 callback); 718 callback);
719 } 719 }
720 720
721 void AutofillDialogControllerImpl::Show() { 721 void AutofillDialogControllerImpl::Show() {
722 dialog_shown_timestamp_ = base::Time::Now(); 722 dialog_shown_timestamp_ = base::Time::Now();
723 723
724 // Determine what field types should be included in the dialog. 724 // Determine what field types should be included in the dialog.
725 bool has_types = false; 725 bool has_types = false;
726 bool has_sections = false; 726 bool has_sections = false;
727 form_structure_.ParseFieldTypesFromAutocompleteAttributes( 727 form_structure_.ParseFieldTypesFromAutocompleteAttributes(
728 &has_types, &has_sections); 728 &has_types, &has_sections);
729 729
730 // Fail if the author didn't specify autocomplete types. 730 // Fail if the author didn't specify autocomplete types.
731 if (!has_types) { 731 if (!has_types) {
732 callback_.Run( 732 callback_.Run(
733 AutofillManagerDelegate::AutocompleteResultErrorDisabled, 733 AutofillClient::AutocompleteResultErrorDisabled,
734 base::ASCIIToUTF16("Form is missing autocomplete attributes."), 734 base::ASCIIToUTF16("Form is missing autocomplete attributes."),
735 NULL); 735 NULL);
736 delete this; 736 delete this;
737 return; 737 return;
738 } 738 }
739 739
740 // Fail if the author didn't ask for at least some kind of credit card 740 // Fail if the author didn't ask for at least some kind of credit card
741 // information. 741 // information.
742 bool has_credit_card_field = false; 742 bool has_credit_card_field = false;
743 for (size_t i = 0; i < form_structure_.field_count(); ++i) { 743 for (size_t i = 0; i < form_structure_.field_count(); ++i) {
744 AutofillType type = form_structure_.field(i)->Type(); 744 AutofillType type = form_structure_.field(i)->Type();
745 if (type.html_type() != HTML_TYPE_UNKNOWN && type.group() == CREDIT_CARD) { 745 if (type.html_type() != HTML_TYPE_UNKNOWN && type.group() == CREDIT_CARD) {
746 has_credit_card_field = true; 746 has_credit_card_field = true;
747 break; 747 break;
748 } 748 }
749 } 749 }
750 750
751 if (!has_credit_card_field) { 751 if (!has_credit_card_field) {
752 callback_.Run( 752 callback_.Run(AutofillClient::AutocompleteResultErrorDisabled,
753 AutofillManagerDelegate::AutocompleteResultErrorDisabled, 753 base::ASCIIToUTF16(
754 base::ASCIIToUTF16("Form is not a payment form (must contain " 754 "Form is not a payment form (must contain "
755 "some autocomplete=\"cc-*\" fields). "), 755 "some autocomplete=\"cc-*\" fields). "),
756 NULL); 756 NULL);
757 delete this; 757 delete this;
758 return; 758 return;
759 } 759 }
760 760
761 billing_country_combobox_model_.reset(new CountryComboboxModel( 761 billing_country_combobox_model_.reset(new CountryComboboxModel(
762 *GetManager(), 762 *GetManager(),
763 base::Bind(CountryFilter, 763 base::Bind(CountryFilter,
764 form_structure_.PossibleValues(ADDRESS_BILLING_COUNTRY)))); 764 form_structure_.PossibleValues(ADDRESS_BILLING_COUNTRY))));
765 shipping_country_combobox_model_.reset(new CountryComboboxModel( 765 shipping_country_combobox_model_.reset(new CountryComboboxModel(
766 *GetManager(), 766 *GetManager(),
(...skipping 1510 matching lines...) Expand 10 before | Expand all | Expand 10 after
2277 } 2277 }
2278 } 2278 }
2279 2279
2280 NOTREACHED(); 2280 NOTREACHED();
2281 } 2281 }
2282 2282
2283 bool AutofillDialogControllerImpl::OnCancel() { 2283 bool AutofillDialogControllerImpl::OnCancel() {
2284 HidePopup(); 2284 HidePopup();
2285 if (!is_submitting_) 2285 if (!is_submitting_)
2286 LogOnCancelMetrics(); 2286 LogOnCancelMetrics();
2287 callback_.Run(AutofillManagerDelegate::AutocompleteResultErrorCancel, 2287 callback_.Run(
2288 base::string16(), 2288 AutofillClient::AutocompleteResultErrorCancel, base::string16(), NULL);
2289 NULL);
2290 return true; 2289 return true;
2291 } 2290 }
2292 2291
2293 bool AutofillDialogControllerImpl::OnAccept() { 2292 bool AutofillDialogControllerImpl::OnAccept() {
2294 ScopedViewUpdates updates(view_.get()); 2293 ScopedViewUpdates updates(view_.get());
2295 choose_another_instrument_or_address_ = false; 2294 choose_another_instrument_or_address_ = false;
2296 wallet_server_validation_recoverable_ = true; 2295 wallet_server_validation_recoverable_ = true;
2297 HidePopup(); 2296 HidePopup();
2298 2297
2299 // This must come before SetIsSubmitting(). 2298 // This must come before SetIsSubmitting().
(...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after
2759 bool AutofillDialogControllerImpl::IsSignInContinueUrl( 2758 bool AutofillDialogControllerImpl::IsSignInContinueUrl(
2760 const GURL& url, 2759 const GURL& url,
2761 size_t* user_index) const { 2760 size_t* user_index) const {
2762 return wallet::IsSignInContinueUrl(url, user_index); 2761 return wallet::IsSignInContinueUrl(url, user_index);
2763 } 2762 }
2764 2763
2765 AutofillDialogControllerImpl::AutofillDialogControllerImpl( 2764 AutofillDialogControllerImpl::AutofillDialogControllerImpl(
2766 content::WebContents* contents, 2765 content::WebContents* contents,
2767 const FormData& form_structure, 2766 const FormData& form_structure,
2768 const GURL& source_url, 2767 const GURL& source_url,
2769 const AutofillManagerDelegate::ResultCallback& callback) 2768 const AutofillClient::ResultCallback& callback)
2770 : WebContentsObserver(contents), 2769 : WebContentsObserver(contents),
2771 profile_(Profile::FromBrowserContext(contents->GetBrowserContext())), 2770 profile_(Profile::FromBrowserContext(contents->GetBrowserContext())),
2772 initial_user_state_(AutofillMetrics::DIALOG_USER_STATE_UNKNOWN), 2771 initial_user_state_(AutofillMetrics::DIALOG_USER_STATE_UNKNOWN),
2773 form_structure_(form_structure), 2772 form_structure_(form_structure),
2774 invoked_from_same_origin_(true), 2773 invoked_from_same_origin_(true),
2775 source_url_(source_url), 2774 source_url_(source_url),
2776 callback_(callback), 2775 callback_(callback),
2777 wallet_client_(profile_->GetRequestContext(), this, source_url), 2776 wallet_client_(profile_->GetRequestContext(), this, source_url),
2778 wallet_items_requested_(false), 2777 wallet_items_requested_(false),
2779 handling_use_wallet_link_click_(false), 2778 handling_use_wallet_link_click_(false),
(...skipping 1108 matching lines...) Expand 10 before | Expand all | Expand 10 after
3888 if (!wallet_error_notification_ && 3887 if (!wallet_error_notification_ &&
3889 account_chooser_model_->HasAccountsToChoose()) { 3888 account_chooser_model_->HasAccountsToChoose()) {
3890 profile_->GetPrefs()->SetBoolean( 3889 profile_->GetPrefs()->SetBoolean(
3891 ::prefs::kAutofillDialogPayWithoutWallet, 3890 ::prefs::kAutofillDialogPayWithoutWallet,
3892 !account_chooser_model_->WalletIsSelected()); 3891 !account_chooser_model_->WalletIsSelected());
3893 } 3892 }
3894 3893
3895 LogOnFinishSubmitMetrics(); 3894 LogOnFinishSubmitMetrics();
3896 3895
3897 // Callback should be called as late as possible. 3896 // Callback should be called as late as possible.
3898 callback_.Run(AutofillManagerDelegate::AutocompleteResultSuccess, 3897 callback_.Run(AutofillClient::AutocompleteResultSuccess,
3899 base::string16(), 3898 base::string16(),
3900 &form_structure_); 3899 &form_structure_);
3901 data_was_passed_back_ = true; 3900 data_was_passed_back_ = true;
3902 3901
3903 // This might delete us. 3902 // This might delete us.
3904 Hide(); 3903 Hide();
3905 } 3904 }
3906 3905
3907 void AutofillDialogControllerImpl::PersistAutofillChoice( 3906 void AutofillDialogControllerImpl::PersistAutofillChoice(
3908 DialogSection section, 3907 DialogSection section,
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
4096 view_->UpdateButtonStrip(); 4095 view_->UpdateButtonStrip();
4097 } 4096 }
4098 4097
4099 void AutofillDialogControllerImpl::FetchWalletCookie() { 4098 void AutofillDialogControllerImpl::FetchWalletCookie() {
4100 net::URLRequestContextGetter* request_context = profile_->GetRequestContext(); 4099 net::URLRequestContextGetter* request_context = profile_->GetRequestContext();
4101 signin_helper_.reset(new wallet::WalletSigninHelper(this, request_context)); 4100 signin_helper_.reset(new wallet::WalletSigninHelper(this, request_context));
4102 signin_helper_->StartWalletCookieValueFetch(); 4101 signin_helper_->StartWalletCookieValueFetch();
4103 } 4102 }
4104 4103
4105 } // namespace autofill 4104 } // namespace autofill
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698