| Index: chrome/renderer/autofill/password_generation_manager.h
|
| diff --git a/chrome/renderer/autofill/password_generation_manager.h b/chrome/renderer/autofill/password_generation_manager.h
|
| index 8aa656f96505e095955bdd58c808646c3250ded9..e22531ead8a75269036363c34e9b4a9629e2d2a6 100644
|
| --- a/chrome/renderer/autofill/password_generation_manager.h
|
| +++ b/chrome/renderer/autofill/password_generation_manager.h
|
| @@ -12,23 +12,28 @@
|
|
|
| #include "content/public/renderer/render_view_observer.h"
|
| #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputElement.h"
|
| +#include "third_party/WebKit/Source/WebKit/chromium/public/WebTextFieldDecoratorClient.h"
|
| +
|
| +namespace WebKit {
|
| +class WebCString;
|
| +class WebDocument;
|
| +}
|
|
|
| namespace autofill {
|
|
|
| // This class is responsible for controlling communication for password
|
| // generation between the browser (which shows the popup and generates
|
| -// passwords) and WebKit (determines which fields are for account signup and
|
| -// fills in the generated passwords). Currently the WebKit part is not
|
| -// implemented.
|
| -class PasswordGenerationManager : public content::RenderViewObserver {
|
| +// passwords) and WebKit (shows the generation icon in the password field).
|
| +class PasswordGenerationManager : public content::RenderViewObserver,
|
| + public WebKit::WebTextFieldDecoratorClient {
|
| public:
|
| explicit PasswordGenerationManager(content::RenderView* render_view);
|
| virtual ~PasswordGenerationManager();
|
|
|
| protected:
|
| - // Returns true if this frame is one that we should consider analyzing.
|
| + // Returns true if this document is one that we should consider analyzing.
|
| // Virtual so that it can be overriden during testing.
|
| - virtual bool ShouldAnalyzeFrame(const WebKit::WebFrame& frame) const;
|
| + virtual bool ShouldAnalyzeDocument(const WebKit::WebDocument& document) const;
|
|
|
| // RenderViewObserver:
|
| virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
|
| @@ -36,7 +41,16 @@ class PasswordGenerationManager : public content::RenderViewObserver {
|
| private:
|
| // RenderViewObserver:
|
| virtual void DidFinishDocumentLoad(WebKit::WebFrame* frame) OVERRIDE;
|
| - virtual void FocusedNodeChanged(const WebKit::WebNode& node) OVERRIDE;
|
| +
|
| + // WebTextFieldDecoratorClient:
|
| + virtual bool shouldAddDecorationTo(
|
| + const WebKit::WebInputElement& element) OVERRIDE;
|
| + virtual bool visibleByDefault() OVERRIDE;
|
| + virtual WebKit::WebCString imageNameForNormalState() OVERRIDE;
|
| + virtual WebKit::WebCString imageNameForDisabledState() OVERRIDE;
|
| + virtual WebKit::WebCString imageNameForReadOnlyState() OVERRIDE;
|
| + virtual void handleClick(WebKit::WebInputElement& element) OVERRIDE;
|
| + virtual void willDetach(const WebKit::WebInputElement&) OVERRIDE;
|
|
|
| // Message handlers.
|
| void OnPasswordAccepted(const string16& password);
|
| @@ -46,8 +60,7 @@ class PasswordGenerationManager : public content::RenderViewObserver {
|
| // with this renderer.
|
| bool enabled_;
|
|
|
| - std::pair<WebKit::WebInputElement,
|
| - std::vector<WebKit::WebInputElement> > account_creation_elements_;
|
| + std::vector<WebKit::WebInputElement> passwords_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(PasswordGenerationManager);
|
| };
|
|
|