| Index: chrome/browser/autofill/autofill_external_delegate.h
|
| diff --git a/chrome/browser/autofill/autofill_external_delegate.h b/chrome/browser/autofill/autofill_external_delegate.h
|
| index 11a53413bf802a92ca30e2deeea7caeb399ccc6d..18aa57c4060565d5543969d63310f94aa93e22bc 100644
|
| --- a/chrome/browser/autofill/autofill_external_delegate.h
|
| +++ b/chrome/browser/autofill/autofill_external_delegate.h
|
| @@ -10,8 +10,10 @@
|
|
|
| #include "base/compiler_specific.h"
|
| #include "base/string16.h"
|
| +#include "chrome/browser/autofill/password_autofill_manager.h"
|
| #include "webkit/forms/form_data.h"
|
| #include "webkit/forms/form_field.h"
|
| +#include "webkit/forms/password_form_dom_manager.h"
|
|
|
| class AutofillManager;
|
| class TabContentsWrapper;
|
| @@ -57,6 +59,11 @@ class AutofillExternalDelegate {
|
| const std::vector<string16>& autofill_icons,
|
| const std::vector<int>& autofill_unique_ids);
|
|
|
| + // Show password suggestions in the popup.
|
| + void OnShowPasswordSuggestions(const std::vector<string16>& suggestions,
|
| + const webkit::forms::FormField& field,
|
| + const gfx::Rect& bounds);
|
| +
|
| // Inform the delegate that the text field editing has ended, this is
|
| // used to help record the metrics of when a new popup is shown.
|
| void DidEndTextFieldEditing();
|
| @@ -73,6 +80,15 @@ class AutofillExternalDelegate {
|
| // Hide the Autofill poup.
|
| virtual void HideAutofillPopup();
|
|
|
| + // Returns the delegate to its starting state by removing any page specific
|
| + // values or settings.
|
| + void Reset();
|
| +
|
| + // Inform the Password Manager of a filled form.
|
| + void AddPasswordFormMapping(
|
| + const webkit::forms::FormField& form,
|
| + const webkit::forms::PasswordFormFillData& fill_data);
|
| +
|
| // Platforms that wish to implement an external Autofill delegate
|
| // MUST implement this. The 1st arg is the tab contents that owns
|
| // this delegate; the second is the Autofill manager owned by the
|
| @@ -102,6 +118,9 @@ class AutofillExternalDelegate {
|
| // Handle platform-dependent hiding.
|
| virtual void HideAutofillPopupInternal() = 0;
|
|
|
| + // Set the bounds of the Autofill element being worked with.
|
| + virtual void SetBounds(const gfx::Rect& bounds) = 0;
|
| +
|
| private:
|
| // Fills the form with the Autofill data corresponding to |unique_id|.
|
| // If |is_preview| is true then this is just a preview to show the user what
|
| @@ -112,6 +131,9 @@ class AutofillExternalDelegate {
|
| TabContentsWrapper* tab_contents_wrapper_; // weak; owns me.
|
| AutofillManager* autofill_manager_; // weak.
|
|
|
| + // Password Autofill manager, handles all password-related Autofilling.
|
| + PasswordAutofillManager password_autofill_manager_;
|
| +
|
| // The ID of the last request sent for form field Autofill. Used to ignore
|
| // out of date responses.
|
| int autofill_query_id_;
|
|
|