Chromium Code Reviews| Index: components/password_manager/content/renderer/credential_manager_client.h |
| diff --git a/components/password_manager/content/renderer/credential_manager_client.h b/components/password_manager/content/renderer/credential_manager_client.h |
| index d87e4601f467ae873f2c066143331e87025cca39..d63c5fee7defe8e3af39d58ebd569d656ed82274 100644 |
| --- a/components/password_manager/content/renderer/credential_manager_client.h |
| +++ b/components/password_manager/content/renderer/credential_manager_client.h |
| @@ -6,10 +6,9 @@ |
| #define COMPONENTS_PASSWORD_MANAGER_CONTENT_RENDERER_CREDENTIAL_MANAGER_CLIENT_H_ |
| #include "base/compiler_specific.h" |
| -#include "base/id_map.h" |
| #include "base/macros.h" |
| +#include "components/password_manager/content/public/interfaces/credential_manager.mojom.h" |
| #include "content/public/renderer/render_view_observer.h" |
| -#include "ipc/ipc_listener.h" |
| #include "third_party/WebKit/public/platform/WebCredentialManagerClient.h" |
| #include "third_party/WebKit/public/platform/WebCredentialManagerError.h" |
| #include "third_party/WebKit/public/platform/WebVector.h" |
| @@ -39,25 +38,19 @@ struct CredentialInfo; |
| // |
| // Note that each RenderView's WebView holds a pointer to the |
| // CredentialManagerClient (set in 'OnRenderViewCreated()') but does not own it. |
| +// |
| +// For now still inherit RenderViewObserver here just to keep liftcycle with |
|
vabr (Chromium)
2016/03/09 16:26:30
nit: Frankly, nobody will periodically check on th
leonhsl(Using Gerrit)
2016/03/10 06:42:42
Done. Removed the comments. Actually I noticed tha
|
| +// RenderView. Maybe later we can consider move |
| +// password_manager/content/renderer into Blink, to attach this instance's |
| +// lifecycle with blink::WebView and access mojo CrendentialManager |
| +// from Blink there? |
| class CredentialManagerClient : public blink::WebCredentialManagerClient, |
| public content::RenderViewObserver { |
| public: |
| explicit CredentialManagerClient(content::RenderView* render_view); |
| ~CredentialManagerClient() override; |
| - // RenderViewObserver: |
| - bool OnMessageReceived(const IPC::Message& message) override; |
| - |
| - // Message handlers for messages from the browser process: |
| - virtual void OnAcknowledgeStore(int request_id); |
| - virtual void OnAcknowledgeRequireUserMediation(int request_id); |
| - virtual void OnSendCredential(int request_id, |
| - const CredentialInfo& credential_info); |
| - virtual void OnRejectCredentialRequest( |
| - int request_id, |
| - blink::WebCredentialManagerError error); |
| - |
| - // blink::WebCredentialManager: |
| + // blink::WebCredentialManagerClient: |
| void dispatchStore( |
| const blink::WebCredential& credential, |
| WebCredentialManagerClient::NotificationCallbacks* callbacks) override; |
| @@ -68,19 +61,9 @@ class CredentialManagerClient : public blink::WebCredentialManagerClient, |
| RequestCallbacks* callbacks) override; |
| private: |
| - typedef IDMap<blink::WebCredentialManagerClient::RequestCallbacks, |
| - IDMapOwnPointer> RequestCallbacksMap; |
| - typedef IDMap<blink::WebCredentialManagerClient::NotificationCallbacks, |
| - IDMapOwnPointer> NotificationCallbacksMap; |
| - |
| - void RespondToNotificationCallback(int request_id, |
| - NotificationCallbacksMap* map); |
| + void ConnectToMojoCMIfNeeded(); |
| - // Track the various blink::WebCredentialManagerClient::*Callbacks objects |
| - // generated from Blink. This class takes ownership of these objects. |
| - NotificationCallbacksMap store_callbacks_; |
| - NotificationCallbacksMap require_user_mediation_callbacks_; |
| - RequestCallbacksMap get_callbacks_; |
| + mojom::CredentialManagerPtr mojo_cm_service_; |
| DISALLOW_COPY_AND_ASSIGN(CredentialManagerClient); |
| }; |