| Index: components/autofill/content/renderer/password_autofill_agent.h
|
| diff --git a/components/autofill/content/renderer/password_autofill_agent.h b/components/autofill/content/renderer/password_autofill_agent.h
|
| index 24a7aa9099f7f7e37200b66cc1db11d9f4b64e14..a1ebefc5c394024c87330e5244124be69232a9a2 100644
|
| --- a/components/autofill/content/renderer/password_autofill_agent.h
|
| +++ b/components/autofill/content/renderer/password_autofill_agent.h
|
| @@ -40,13 +40,19 @@ class PasswordAutofillAgent : public content::RenderViewObserver {
|
|
|
| // Fills the username and password fields of this form with the given values.
|
| // Returns true if the fields were filled, false otherwise.
|
| - bool AcceptSuggestion(const blink::WebNode& node,
|
| - const blink::WebString& username,
|
| - const blink::WebString& password);
|
| -
|
| - // A no-op. Password forms are not previewed, so they do not need to be
|
| - // cleared when the selection changes. However, this method returns
|
| - // true when |node| is fillable by password Autofill.
|
| + bool FillSuggestion(const blink::WebNode& node,
|
| + const blink::WebString& username,
|
| + const blink::WebString& password);
|
| +
|
| + // Previews the username and password fields of this form with the given
|
| + // values. Returns true if the fields were previewed, false otherwise.
|
| + bool PreviewSuggestion(const blink::WebNode& node,
|
| + const blink::WebString& username,
|
| + const blink::WebString& password);
|
| +
|
| + // Clears the preview for the username and password fields, restoring both to
|
| + // their previous filled state. Return false if no login information was
|
| + // found for the form.
|
| bool DidClearAutofillSelection(const blink::WebNode& node);
|
| // Shows an Autofill popup with username suggestions for |element|.
|
| // Returns true if any suggestions were shown, false otherwise.
|
| @@ -153,12 +159,11 @@ class PasswordAutofillAgent : public content::RenderViewObserver {
|
| blink::WebInputElement username_element,
|
| blink::WebInputElement password_element);
|
|
|
| - bool FillUserNameAndPassword(
|
| - blink::WebInputElement* username_element,
|
| - blink::WebInputElement* password_element,
|
| - const PasswordFormFillData& fill_data,
|
| - bool exact_username_match,
|
| - bool set_selection);
|
| + bool FillUserNameAndPassword(blink::WebInputElement* username_element,
|
| + blink::WebInputElement* password_element,
|
| + const PasswordFormFillData& fill_data,
|
| + bool exact_username_match,
|
| + bool set_selection);
|
|
|
| // Fills |login_input| and |password| with the most relevant suggestion from
|
| // |fill_data| and shows a popup with other suggestions.
|
| @@ -176,6 +181,11 @@ class PasswordAutofillAgent : public content::RenderViewObserver {
|
| blink::WebInputElement* found_input,
|
| PasswordInfo* found_password);
|
|
|
| + // Clears the preview for the username and password fields, restoring both to
|
| + // their previous filled state.
|
| + void ClearPreview(blink::WebInputElement* username,
|
| + blink::WebInputElement* password);
|
| +
|
| // If |provisionally_saved_forms_| contains a form for |current_frame| or its
|
| // children, return such frame.
|
| blink::WebFrame* CurrentOrChildFrameWithSavedForms(
|
| @@ -199,6 +209,15 @@ class PasswordAutofillAgent : public content::RenderViewObserver {
|
| // True indicates that user debug information should be logged.
|
| bool logging_state_active_;
|
|
|
| + // True indicates that the username field was autofilled, false otherwise.
|
| + bool was_username_autofilled_;
|
| + // True indicates that the password field was autofilled, false otherwise.
|
| + bool was_password_autofilled_;
|
| +
|
| + // Records original starting point of username element's selection range
|
| + // before preview.
|
| + int username_selection_start_;
|
| +
|
| base::WeakPtrFactory<PasswordAutofillAgent> weak_ptr_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(PasswordAutofillAgent);
|
|
|