Chromium Code Reviews| Index: chrome/renderer/chrome_content_renderer_client.cc |
| diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc |
| index 2aa64c2b23c62402b30db95333a606002ecd24f5..b7b7ccbfdcb69cd913e14acf5928af531affea8d 100644 |
| --- a/chrome/renderer/chrome_content_renderer_client.cc |
| +++ b/chrome/renderer/chrome_content_renderer_client.cc |
| @@ -74,6 +74,7 @@ |
| #include "components/autofill/content/renderer/password_generation_agent.h" |
| #include "components/dom_distiller/core/url_constants.h" |
| #include "components/nacl/renderer/ppb_nacl_private_impl.h" |
| +#include "components/password_manager/content/renderer/credential_manager_client.h" |
| #include "components/plugins/renderer/mobile_youtube_plugin.h" |
| #include "components/signin/core/common/profile_management_switches.h" |
| #include "components/visitedlink/renderer/visitedlink_slave.h" |
| @@ -314,6 +315,14 @@ void ChromeContentRendererClient::RenderThreadStarted() { |
| #endif |
| search_bouncer_.reset(new SearchBouncer()); |
| + // ChromeRenderViewTest::SetUp() creates its own CredentialManagerClient and |
|
vabr (Chromium)
2014/08/20 14:40:34
It would be great if the production code did not k
Ilya Sherman
2014/08/21 00:11:21
+1, especially since it doesn't look like the test
Mike West
2014/08/21 10:20:46
This isn't something I invented; I lifted this mod
|
| + // injects it using SetCredentialManagerClientForTesting(). Don't overwrite |
| + // it. |
| + if (!credential_manager_client_) { |
| + credential_manager_client_.reset( |
| + new password_manager::CredentialManagerClient()); |
| + } |
| + |
| thread->AddObserver(chrome_observer_.get()); |
| thread->AddObserver(extension_dispatcher_.get()); |
| #if defined(FULL_SAFE_BROWSING) |
| @@ -322,6 +331,7 @@ void ChromeContentRendererClient::RenderThreadStarted() { |
| thread->AddObserver(visited_link_slave_.get()); |
| thread->AddObserver(prerender_dispatcher_.get()); |
| thread->AddObserver(search_bouncer_.get()); |
| + thread->AddObserver(credential_manager_client_.get()); |
| #if defined(ENABLE_WEBRTC) |
| thread->AddFilter(webrtc_logging_message_filter_.get()); |
| @@ -493,6 +503,8 @@ void ChromeContentRendererClient::RenderViewCreated( |
| new SearchBox(render_view); |
| new ChromeRenderViewObserver(render_view, chrome_observer_.get()); |
| + |
| + credential_manager_client_->OnRenderViewCreated(render_view); |
| } |
| void ChromeContentRendererClient::SetNumberOfViews(int number_of_views) { |
| @@ -1306,6 +1318,11 @@ bool ChromeContentRendererClient::ShouldOverridePageVisibilityState( |
| return true; |
| } |
| +void ChromeContentRendererClient::SetCredentialManagerClientForTest( |
| + password_manager::CredentialManagerClient* client) { |
| + credential_manager_client_.reset(client); |
| +} |
| + |
| void ChromeContentRendererClient::SetExtensionDispatcherForTest( |
| extensions::Dispatcher* extension_dispatcher) { |
| extension_dispatcher_.reset(extension_dispatcher); |