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

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

Issue 12207140: re-commit r181807: (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 10 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
« no previous file with comments | « no previous file | chrome/browser/ui/autofill/autofill_dialog_controller_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_IMPL_H_ 5 #ifndef CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_IMPL_H_
6 #define CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_IMPL_H_ 6 #define CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_IMPL_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/callback.h" 10 #include "base/callback.h"
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "base/memory/weak_ptr.h" 12 #include "base/memory/weak_ptr.h"
13 #include "base/string16.h" 13 #include "base/string16.h"
14 #include "chrome/browser/autofill/field_types.h" 14 #include "chrome/browser/autofill/field_types.h"
15 #include "chrome/browser/autofill/form_structure.h" 15 #include "chrome/browser/autofill/form_structure.h"
16 #include "chrome/browser/autofill/personal_data_manager.h" 16 #include "chrome/browser/autofill/personal_data_manager.h"
17 #include "chrome/browser/autofill/personal_data_manager_observer.h"
17 #include "chrome/browser/autofill/wallet/required_action.h" 18 #include "chrome/browser/autofill/wallet/required_action.h"
18 #include "chrome/browser/autofill/wallet/wallet_client.h" 19 #include "chrome/browser/autofill/wallet/wallet_client.h"
19 #include "chrome/browser/autofill/wallet/wallet_client_observer.h" 20 #include "chrome/browser/autofill/wallet/wallet_client_observer.h"
20 #include "chrome/browser/ui/autofill/autofill_dialog_controller.h" 21 #include "chrome/browser/ui/autofill/autofill_dialog_controller.h"
21 #include "chrome/browser/ui/autofill/autofill_dialog_models.h" 22 #include "chrome/browser/ui/autofill/autofill_dialog_models.h"
22 #include "chrome/browser/ui/autofill/autofill_dialog_types.h" 23 #include "chrome/browser/ui/autofill/autofill_dialog_types.h"
23 #include "chrome/browser/ui/autofill/autofill_popup_controller_impl.h" 24 #include "chrome/browser/ui/autofill/autofill_popup_controller_impl.h"
24 #include "chrome/browser/ui/autofill/autofill_popup_delegate.h" 25 #include "chrome/browser/ui/autofill/autofill_popup_delegate.h"
25 #include "content/public/browser/notification_observer.h" 26 #include "content/public/browser/notification_observer.h"
26 #include "content/public/browser/notification_registrar.h" 27 #include "content/public/browser/notification_registrar.h"
(...skipping 12 matching lines...) Expand all
39 namespace autofill { 40 namespace autofill {
40 41
41 class AutofillDialogView; 42 class AutofillDialogView;
42 43
43 // This class drives the dialog that appears when a site uses the imperative 44 // This class drives the dialog that appears when a site uses the imperative
44 // autocomplete API to fill out a form. 45 // autocomplete API to fill out a form.
45 class AutofillDialogControllerImpl : public AutofillDialogController, 46 class AutofillDialogControllerImpl : public AutofillDialogController,
46 public AutofillPopupDelegate, 47 public AutofillPopupDelegate,
47 public content::NotificationObserver, 48 public content::NotificationObserver,
48 public SuggestionsMenuModelDelegate, 49 public SuggestionsMenuModelDelegate,
49 public wallet::WalletClientObserver { 50 public wallet::WalletClientObserver,
51 public PersonalDataManagerObserver {
50 public: 52 public:
51 AutofillDialogControllerImpl( 53 AutofillDialogControllerImpl(
52 content::WebContents* contents, 54 content::WebContents* contents,
53 const FormData& form_structure, 55 const FormData& form_structure,
54 const GURL& source_url, 56 const GURL& source_url,
55 const content::SSLStatus& ssl_status, 57 const content::SSLStatus& ssl_status,
56 const base::Callback<void(const FormStructure*)>& callback); 58 const base::Callback<void(const FormStructure*)>& callback);
57 virtual ~AutofillDialogControllerImpl(); 59 virtual ~AutofillDialogControllerImpl();
58 60
59 void Show(); 61 void Show();
60 void Hide(); 62 void Hide();
61 63
64 // Updates the progress bar based on the Autocheckout progress. |value| should
65 // be in [0.0, 1.0].
66 void UpdateProgressBar(double value);
67
62 // AutofillDialogController implementation. 68 // AutofillDialogController implementation.
63 virtual string16 DialogTitle() const OVERRIDE; 69 virtual string16 DialogTitle() const OVERRIDE;
64 virtual string16 AccountChooserText() const OVERRIDE; 70 virtual string16 AccountChooserText() const OVERRIDE;
65 virtual string16 EditSuggestionText() const OVERRIDE; 71 virtual string16 EditSuggestionText() const OVERRIDE;
66 virtual string16 UseBillingForShippingText() const OVERRIDE; 72 virtual string16 UseBillingForShippingText() const OVERRIDE;
67 virtual string16 WalletOptionText() const OVERRIDE; 73 virtual string16 WalletOptionText() const OVERRIDE;
68 virtual string16 CancelButtonText() const OVERRIDE; 74 virtual string16 CancelButtonText() const OVERRIDE;
69 virtual string16 ConfirmButtonText() const OVERRIDE; 75 virtual string16 ConfirmButtonText() const OVERRIDE;
70 virtual string16 SaveLocallyText() const OVERRIDE; 76 virtual string16 SaveLocallyText() const OVERRIDE;
71 virtual string16 CancelSignInText() const OVERRIDE; 77 virtual string16 CancelSignInText() const OVERRIDE;
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 // AutofillPopupDelegate implementation. 109 // AutofillPopupDelegate implementation.
104 virtual void OnPopupShown(content::KeyboardListener* listener) OVERRIDE; 110 virtual void OnPopupShown(content::KeyboardListener* listener) OVERRIDE;
105 virtual void OnPopupHidden(content::KeyboardListener* listener) OVERRIDE; 111 virtual void OnPopupHidden(content::KeyboardListener* listener) OVERRIDE;
106 virtual void DidSelectSuggestion(int identifier) OVERRIDE; 112 virtual void DidSelectSuggestion(int identifier) OVERRIDE;
107 virtual void DidAcceptSuggestion(const string16& value, 113 virtual void DidAcceptSuggestion(const string16& value,
108 int identifier) OVERRIDE; 114 int identifier) OVERRIDE;
109 virtual void RemoveSuggestion(const string16& value, 115 virtual void RemoveSuggestion(const string16& value,
110 int identifier) OVERRIDE; 116 int identifier) OVERRIDE;
111 virtual void ClearPreviewedForm() OVERRIDE; 117 virtual void ClearPreviewedForm() OVERRIDE;
112 118
113 // content::NotificationObserver implementation: 119 // content::NotificationObserver implementation.
114 virtual void Observe(int type, 120 virtual void Observe(int type,
115 const content::NotificationSource& source, 121 const content::NotificationSource& source,
116 const content::NotificationDetails& details) OVERRIDE; 122 const content::NotificationDetails& details) OVERRIDE;
117 123
118 // SuggestionsMenuModelDelegate implementation. 124 // SuggestionsMenuModelDelegate implementation.
119 virtual void SuggestionItemSelected(const SuggestionsMenuModel& model) 125 virtual void SuggestionItemSelected(const SuggestionsMenuModel& model)
120 OVERRIDE; 126 OVERRIDE;
121 127
122 // wallet::WalletClientObserver implementation. 128 // wallet::WalletClientObserver implementation.
123 virtual void OnDidAcceptLegalDocuments() OVERRIDE; 129 virtual void OnDidAcceptLegalDocuments() OVERRIDE;
124 virtual void OnDidEncryptOtp(const std::string& encrypted_otp, 130 virtual void OnDidEncryptOtp(const std::string& encrypted_otp,
125 const std::string& session_material) OVERRIDE; 131 const std::string& session_material) OVERRIDE;
126 virtual void OnDidEscrowSensitiveInformation( 132 virtual void OnDidEscrowSensitiveInformation(
127 const std::string& escrow_handle) OVERRIDE; 133 const std::string& escrow_handle) OVERRIDE;
128 virtual void OnDidGetFullWallet( 134 virtual void OnDidGetFullWallet(
129 scoped_ptr<wallet::FullWallet> full_wallet) OVERRIDE; 135 scoped_ptr<wallet::FullWallet> full_wallet) OVERRIDE;
130 virtual void OnDidGetWalletItems( 136 virtual void OnDidGetWalletItems(
131 scoped_ptr<wallet::WalletItems> wallet_items) OVERRIDE; 137 scoped_ptr<wallet::WalletItems> wallet_items) OVERRIDE;
132 virtual void OnDidSaveAddress(const std::string& address_id) OVERRIDE; 138 virtual void OnDidSaveAddress(const std::string& address_id) OVERRIDE;
133 virtual void OnDidSaveInstrument(const std::string& instrument_id) OVERRIDE; 139 virtual void OnDidSaveInstrument(const std::string& instrument_id) OVERRIDE;
134 virtual void OnDidSaveInstrumentAndAddress( 140 virtual void OnDidSaveInstrumentAndAddress(
135 const std::string& instrument_id, 141 const std::string& instrument_id,
136 const std::string& address_id) OVERRIDE; 142 const std::string& address_id) OVERRIDE;
137 virtual void OnDidSendAutocheckoutStatus() OVERRIDE; 143 virtual void OnDidSendAutocheckoutStatus() OVERRIDE;
138 virtual void OnDidUpdateInstrument(const std::string& instrument_id) OVERRIDE; 144 virtual void OnDidUpdateInstrument(const std::string& instrument_id) OVERRIDE;
139 virtual void OnWalletError() OVERRIDE; 145 virtual void OnWalletError() OVERRIDE;
140 virtual void OnMalformedResponse() OVERRIDE; 146 virtual void OnMalformedResponse() OVERRIDE;
141 virtual void OnNetworkError(int response_code) OVERRIDE; 147 virtual void OnNetworkError(int response_code) OVERRIDE;
142 148
143 // Updates the progress bar based on the Autocheckout progress. |value| should 149 // PersonalDataManagerObserver implementation.
144 // be in [0.0, 1.0]. 150 virtual void OnPersonalDataChanged() OVERRIDE;
145 void UpdateProgressBar(double value);
146 151
147 private: 152 private:
148 // Determines whether |input| and |field| match. 153 // Determines whether |input| and |field| match.
149 typedef base::Callback<bool(const DetailInput& input, 154 typedef base::Callback<bool(const DetailInput& input,
150 const AutofillField& field)> InputFieldComparator; 155 const AutofillField& field)> InputFieldComparator;
151 156
152 // Refresh wallet items immediately if there's no refresh currently in 157 // Refresh wallet items immediately if there's no refresh currently in
153 // progress, otherwise wait until the current refresh completes. 158 // progress, otherwise wait until the current refresh completes.
154 void ScheduleRefreshWalletItems(); 159 void ScheduleRefreshWalletItems();
155 160
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
290 295
291 // A NotificationRegistrar for tracking the completion of sign-in. 296 // A NotificationRegistrar for tracking the completion of sign-in.
292 content::NotificationRegistrar registrar_; 297 content::NotificationRegistrar registrar_;
293 298
294 DISALLOW_COPY_AND_ASSIGN(AutofillDialogControllerImpl); 299 DISALLOW_COPY_AND_ASSIGN(AutofillDialogControllerImpl);
295 }; 300 };
296 301
297 } // namespace autofill 302 } // namespace autofill
298 303
299 #endif // CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_IMPL_H_ 304 #endif // CHROME_BROWSER_UI_AUTOFILL_AUTOFILL_DIALOG_CONTROLLER_IMPL_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/ui/autofill/autofill_dialog_controller_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698