Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(105)

Side by Side Diff: chrome/renderer/chrome_content_renderer_client.cc

Issue 464883002: Credential Manager: Renderer-side implementation. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Feedback. Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/renderer/chrome_content_renderer_client.h" 5 #include "chrome/renderer/chrome_content_renderer_client.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/debug/crash_logging.h" 8 #include "base/debug/crash_logging.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/metrics/field_trial.h" 10 #include "base/metrics/field_trial.h"
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 #include "chrome/renderer/searchbox/search_bouncer.h" 67 #include "chrome/renderer/searchbox/search_bouncer.h"
68 #include "chrome/renderer/searchbox/searchbox.h" 68 #include "chrome/renderer/searchbox/searchbox.h"
69 #include "chrome/renderer/searchbox/searchbox_extension.h" 69 #include "chrome/renderer/searchbox/searchbox_extension.h"
70 #include "chrome/renderer/tts_dispatcher.h" 70 #include "chrome/renderer/tts_dispatcher.h"
71 #include "chrome/renderer/worker_permission_client_proxy.h" 71 #include "chrome/renderer/worker_permission_client_proxy.h"
72 #include "components/autofill/content/renderer/autofill_agent.h" 72 #include "components/autofill/content/renderer/autofill_agent.h"
73 #include "components/autofill/content/renderer/password_autofill_agent.h" 73 #include "components/autofill/content/renderer/password_autofill_agent.h"
74 #include "components/autofill/content/renderer/password_generation_agent.h" 74 #include "components/autofill/content/renderer/password_generation_agent.h"
75 #include "components/dom_distiller/core/url_constants.h" 75 #include "components/dom_distiller/core/url_constants.h"
76 #include "components/nacl/renderer/ppb_nacl_private_impl.h" 76 #include "components/nacl/renderer/ppb_nacl_private_impl.h"
77 #include "components/password_manager/content/renderer/credential_manager_client .h"
77 #include "components/plugins/renderer/mobile_youtube_plugin.h" 78 #include "components/plugins/renderer/mobile_youtube_plugin.h"
78 #include "components/signin/core/common/profile_management_switches.h" 79 #include "components/signin/core/common/profile_management_switches.h"
79 #include "components/visitedlink/renderer/visitedlink_slave.h" 80 #include "components/visitedlink/renderer/visitedlink_slave.h"
80 #include "content/public/common/content_constants.h" 81 #include "content/public/common/content_constants.h"
81 #include "content/public/renderer/render_frame.h" 82 #include "content/public/renderer/render_frame.h"
82 #include "content/public/renderer/render_thread.h" 83 #include "content/public/renderer/render_thread.h"
83 #include "content/public/renderer/render_view.h" 84 #include "content/public/renderer/render_view.h"
84 #include "content/public/renderer/render_view_visitor.h" 85 #include "content/public/renderer/render_view_visitor.h"
85 #include "extensions/common/constants.h" 86 #include "extensions/common/constants.h"
86 #include "extensions/common/extension.h" 87 #include "extensions/common/extension.h"
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 #if defined(FULL_SAFE_BROWSING) 308 #if defined(FULL_SAFE_BROWSING)
308 phishing_classifier_.reset(safe_browsing::PhishingClassifierFilter::Create()); 309 phishing_classifier_.reset(safe_browsing::PhishingClassifierFilter::Create());
309 #endif 310 #endif
310 prerender_dispatcher_.reset(new prerender::PrerenderDispatcher()); 311 prerender_dispatcher_.reset(new prerender::PrerenderDispatcher());
311 #if defined(ENABLE_WEBRTC) 312 #if defined(ENABLE_WEBRTC)
312 webrtc_logging_message_filter_ = new WebRtcLoggingMessageFilter( 313 webrtc_logging_message_filter_ = new WebRtcLoggingMessageFilter(
313 content::RenderThread::Get()->GetIOMessageLoopProxy()); 314 content::RenderThread::Get()->GetIOMessageLoopProxy());
314 #endif 315 #endif
315 search_bouncer_.reset(new SearchBouncer()); 316 search_bouncer_.reset(new SearchBouncer());
316 317
318 // 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
319 // injects it using SetCredentialManagerClientForTesting(). Don't overwrite
320 // it.
321 if (!credential_manager_client_) {
322 credential_manager_client_.reset(
323 new password_manager::CredentialManagerClient());
324 }
325
317 thread->AddObserver(chrome_observer_.get()); 326 thread->AddObserver(chrome_observer_.get());
318 thread->AddObserver(extension_dispatcher_.get()); 327 thread->AddObserver(extension_dispatcher_.get());
319 #if defined(FULL_SAFE_BROWSING) 328 #if defined(FULL_SAFE_BROWSING)
320 thread->AddObserver(phishing_classifier_.get()); 329 thread->AddObserver(phishing_classifier_.get());
321 #endif 330 #endif
322 thread->AddObserver(visited_link_slave_.get()); 331 thread->AddObserver(visited_link_slave_.get());
323 thread->AddObserver(prerender_dispatcher_.get()); 332 thread->AddObserver(prerender_dispatcher_.get());
324 thread->AddObserver(search_bouncer_.get()); 333 thread->AddObserver(search_bouncer_.get());
334 thread->AddObserver(credential_manager_client_.get());
325 335
326 #if defined(ENABLE_WEBRTC) 336 #if defined(ENABLE_WEBRTC)
327 thread->AddFilter(webrtc_logging_message_filter_.get()); 337 thread->AddFilter(webrtc_logging_message_filter_.get());
328 #endif 338 #endif
329 thread->AddFilter(new CastIPCDispatcher( 339 thread->AddFilter(new CastIPCDispatcher(
330 content::RenderThread::Get()->GetIOMessageLoopProxy())); 340 content::RenderThread::Get()->GetIOMessageLoopProxy()));
331 341
332 thread->RegisterExtension(extensions_v8::ExternalExtension::Get()); 342 thread->RegisterExtension(extensions_v8::ExternalExtension::Get());
333 thread->RegisterExtension(extensions_v8::LoadTimesExtension::Get()); 343 thread->RegisterExtension(extensions_v8::LoadTimesExtension::Get());
334 344
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
486 new PasswordAutofillAgent(render_view); 496 new PasswordAutofillAgent(render_view);
487 new AutofillAgent(render_view, 497 new AutofillAgent(render_view,
488 password_autofill_agent, 498 password_autofill_agent,
489 password_generation_agent); 499 password_generation_agent);
490 500
491 CommandLine* command_line = CommandLine::ForCurrentProcess(); 501 CommandLine* command_line = CommandLine::ForCurrentProcess();
492 if (command_line->HasSwitch(switches::kInstantProcess)) 502 if (command_line->HasSwitch(switches::kInstantProcess))
493 new SearchBox(render_view); 503 new SearchBox(render_view);
494 504
495 new ChromeRenderViewObserver(render_view, chrome_observer_.get()); 505 new ChromeRenderViewObserver(render_view, chrome_observer_.get());
506
507 credential_manager_client_->OnRenderViewCreated(render_view);
496 } 508 }
497 509
498 void ChromeContentRendererClient::SetNumberOfViews(int number_of_views) { 510 void ChromeContentRendererClient::SetNumberOfViews(int number_of_views) {
499 base::debug::SetCrashKeyValue(crash_keys::kNumberOfViews, 511 base::debug::SetCrashKeyValue(crash_keys::kNumberOfViews,
500 base::IntToString(number_of_views)); 512 base::IntToString(number_of_views));
501 } 513 }
502 514
503 SkBitmap* ChromeContentRendererClient::GetSadPluginBitmap() { 515 SkBitmap* ChromeContentRendererClient::GetSadPluginBitmap() {
504 return const_cast<SkBitmap*>(ResourceBundle::GetSharedInstance(). 516 return const_cast<SkBitmap*>(ResourceBundle::GetSharedInstance().
505 GetImageNamed(IDR_SAD_PLUGIN).ToSkBitmap()); 517 GetImageNamed(IDR_SAD_PLUGIN).ToSkBitmap());
(...skipping 793 matching lines...) Expand 10 before | Expand all | Expand 10 after
1299 bool ChromeContentRendererClient::ShouldOverridePageVisibilityState( 1311 bool ChromeContentRendererClient::ShouldOverridePageVisibilityState(
1300 const content::RenderFrame* render_frame, 1312 const content::RenderFrame* render_frame,
1301 blink::WebPageVisibilityState* override_state) { 1313 blink::WebPageVisibilityState* override_state) {
1302 if (!prerender::PrerenderHelper::IsPrerendering(render_frame)) 1314 if (!prerender::PrerenderHelper::IsPrerendering(render_frame))
1303 return false; 1315 return false;
1304 1316
1305 *override_state = blink::WebPageVisibilityStatePrerender; 1317 *override_state = blink::WebPageVisibilityStatePrerender;
1306 return true; 1318 return true;
1307 } 1319 }
1308 1320
1321 void ChromeContentRendererClient::SetCredentialManagerClientForTest(
1322 password_manager::CredentialManagerClient* client) {
1323 credential_manager_client_.reset(client);
1324 }
1325
1309 void ChromeContentRendererClient::SetExtensionDispatcherForTest( 1326 void ChromeContentRendererClient::SetExtensionDispatcherForTest(
1310 extensions::Dispatcher* extension_dispatcher) { 1327 extensions::Dispatcher* extension_dispatcher) {
1311 extension_dispatcher_.reset(extension_dispatcher); 1328 extension_dispatcher_.reset(extension_dispatcher);
1312 permissions_policy_delegate_.reset( 1329 permissions_policy_delegate_.reset(
1313 new extensions::RendererPermissionsPolicyDelegate( 1330 new extensions::RendererPermissionsPolicyDelegate(
1314 extension_dispatcher_.get())); 1331 extension_dispatcher_.get()));
1315 } 1332 }
1316 1333
1317 extensions::Dispatcher* 1334 extensions::Dispatcher*
1318 ChromeContentRendererClient::GetExtensionDispatcherForTest() { 1335 ChromeContentRendererClient::GetExtensionDispatcherForTest() {
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
1506 1523
1507 if (IsExtensionOrSharedModuleWhitelisted(url, allowed_video_decode_origins_)) 1524 if (IsExtensionOrSharedModuleWhitelisted(url, allowed_video_decode_origins_))
1508 return true; 1525 return true;
1509 1526
1510 chrome::VersionInfo::Channel channel = chrome::VersionInfo::GetChannel(); 1527 chrome::VersionInfo::Channel channel = chrome::VersionInfo::GetChannel();
1511 return channel <= chrome::VersionInfo::CHANNEL_DEV; 1528 return channel <= chrome::VersionInfo::CHANNEL_DEV;
1512 #else 1529 #else
1513 return false; 1530 return false;
1514 #endif 1531 #endif
1515 } 1532 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698