| Index: components/autofill/content/renderer/password_generation_agent.h
|
| diff --git a/components/autofill/content/renderer/password_generation_agent.h b/components/autofill/content/renderer/password_generation_agent.h
|
| index 47f3a912e3e6da05d171765c93e1f8cd697a7d8a..df2b9a7a7e757afbf3579a9dd089b5dc0c960d49 100644
|
| --- a/components/autofill/content/renderer/password_generation_agent.h
|
| +++ b/components/autofill/content/renderer/password_generation_agent.h
|
| @@ -14,7 +14,10 @@
|
|
|
| #include "base/macros.h"
|
| #include "base/memory/linked_ptr.h"
|
| +#include "components/autofill/content/public/interfaces/autofill_agent.mojom.h"
|
| +#include "components/autofill/content/public/interfaces/autofill_driver.mojom.h"
|
| #include "content/public/renderer/render_frame_observer.h"
|
| +#include "mojo/public/cpp/bindings/binding.h"
|
| #include "third_party/WebKit/public/web/WebInputElement.h"
|
| #include "url/gurl.h"
|
|
|
| @@ -32,12 +35,26 @@ class PasswordAutofillAgent;
|
| // This class is responsible for controlling communication for password
|
| // generation between the browser (which shows the popup and generates
|
| // passwords) and WebKit (shows the generation icon in the password field).
|
| -class PasswordGenerationAgent : public content::RenderFrameObserver {
|
| +class PasswordGenerationAgent : public content::RenderFrameObserver,
|
| + public mojom::PasswordGenerationAgent {
|
| public:
|
| PasswordGenerationAgent(content::RenderFrame* render_frame,
|
| PasswordAutofillAgent* password_agent);
|
| ~PasswordGenerationAgent() override;
|
|
|
| + void BindRequest(mojom::PasswordGenerationAgentRequest request);
|
| +
|
| + // mojom::PasswordGenerationAgent:
|
| + void FormNotBlacklisted(const PasswordForm& form) override;
|
| + void GeneratedPasswordAccepted(const base::string16& password) override;
|
| + void FoundFormsEligibleForGeneration(
|
| + const std::vector<PasswordFormGenerationData>& forms) override;
|
| + // Sets |generation_element_| to the focused password field and shows a
|
| + // generation popup at this field.
|
| + void UserTriggeredGeneratePassword() override;
|
| + // Enables the form classifier.
|
| + void AllowToRunFormClassifier() override;
|
| +
|
| // Returns true if the field being changed is one where a generated password
|
| // is being offered. Updates the state of the popup if necessary.
|
| bool TextDidChangeInTextField(const blink::WebInputElement& element);
|
| @@ -74,16 +91,11 @@ class PasswordGenerationAgent : public content::RenderFrameObserver {
|
| typedef std::vector<AccountCreationFormData> AccountCreationFormDataList;
|
|
|
| // RenderFrameObserver:
|
| - bool OnMessageReceived(const IPC::Message& message) override;
|
| void DidFinishDocumentLoad() override;
|
| void DidFinishLoad() override;
|
| void OnDestruct() override;
|
|
|
| - // Message handlers.
|
| - void OnFormNotBlacklisted(const PasswordForm& form);
|
| - void OnPasswordAccepted(const base::string16& password);
|
| - void OnFormsEligibleForGenerationFound(
|
| - const std::vector<autofill::PasswordFormGenerationData>& forms);
|
| + const mojom::PasswordManagerDriverPtr& GetPasswordManagerDriver();
|
|
|
| // Helper function that will try and populate |password_elements_| and
|
| // |possible_account_creation_form_|.
|
| @@ -103,13 +115,6 @@ class PasswordGenerationAgent : public content::RenderFrameObserver {
|
| // Hides a password generation popup if one exists.
|
| void HidePopup();
|
|
|
| - // Sets |generation_element_| to the focused password field and shows a
|
| - // generation popup at this field.
|
| - void OnUserTriggeredGeneratePassword();
|
| -
|
| - // Enables the form classifier.
|
| - void OnAllowToRunFormClassifier();
|
| -
|
| // Runs HTML parsing based classifier and saves its outcome to proto.
|
| // TODO(crbug.com/621442): Remove client-side form classifier when server-side
|
| // classifier is ready.
|
| @@ -177,6 +182,8 @@ class PasswordGenerationAgent : public content::RenderFrameObserver {
|
| // in password fields are updated.
|
| PasswordAutofillAgent* password_agent_;
|
|
|
| + mojo::Binding<mojom::PasswordGenerationAgent> binding_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(PasswordGenerationAgent);
|
| };
|
|
|
|
|