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

Side by Side Diff: chrome/browser/chrome_content_browser_client.cc

Issue 2079943002: Change RenderFrame to use InterfaceRegistry et al. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@a2
Patch Set: . Created 4 years, 6 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
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/browser/chrome_content_browser_client.h" 5 #include "chrome/browser/chrome_content_browser_client.h"
6 6
7 #include <map> 7 #include <map>
8 #include <set> 8 #include <set>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 2704 matching lines...) Expand 10 before | Expand all | Expand 10 after
2715 } 2715 }
2716 #endif // defined(OS_WIN) 2716 #endif // defined(OS_WIN)
2717 2717
2718 void ChromeContentBrowserClient::RegisterRenderProcessMojoServices( 2718 void ChromeContentBrowserClient::RegisterRenderProcessMojoServices(
2719 content::ServiceRegistry* registry, 2719 content::ServiceRegistry* registry,
2720 content::RenderProcessHost* render_process_host) { 2720 content::RenderProcessHost* render_process_host) {
2721 registry->AddService( 2721 registry->AddService(
2722 base::Bind(&startup_metric_utils::StartupMetricHostImpl::Create)); 2722 base::Bind(&startup_metric_utils::StartupMetricHostImpl::Create));
2723 } 2723 }
2724 2724
2725 void ChromeContentBrowserClient::RegisterFrameMojoShellServices( 2725 void ChromeContentBrowserClient::RegisterFrameMojoShellInterfaces(
2726 content::ServiceRegistry* registry, 2726 shell::InterfaceRegistry* registry,
2727 content::RenderFrameHost* render_frame_host) { 2727 content::RenderFrameHost* render_frame_host) {
2728 // TODO(xhwang): Only register this when ENABLE_MOJO_MEDIA. 2728 // TODO(xhwang): Only register this when ENABLE_MOJO_MEDIA.
2729 #if defined(OS_CHROMEOS) 2729 #if defined(OS_CHROMEOS)
2730 registry->AddService( 2730 registry->AddInterface(
2731 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create, 2731 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create,
2732 render_frame_host)); 2732 render_frame_host));
2733 #endif // defined(OS_CHROMEOS) 2733 #endif // defined(OS_CHROMEOS)
2734 2734
2735 #if defined(ENABLE_MOJO_MEDIA) 2735 #if defined(ENABLE_MOJO_MEDIA)
2736 registry->AddService( 2736 registry->AddInterface(
2737 base::Bind(&OutputProtectionImpl::Create, render_frame_host)); 2737 base::Bind(&OutputProtectionImpl::Create, render_frame_host));
2738 #endif // defined(ENABLE_MOJO_MEDIA) 2738 #endif // defined(ENABLE_MOJO_MEDIA)
2739 } 2739 }
2740 2740
2741 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices( 2741 void ChromeContentBrowserClient::RegisterRenderFrameMojoInterfaces(
2742 content::ServiceRegistry* registry, 2742 shell::InterfaceRegistry* registry,
2743 content::RenderFrameHost* render_frame_host) { 2743 content::RenderFrameHost* render_frame_host) {
2744 // WebUSB is an experimental web API. It will only work if the experiment 2744 // WebUSB is an experimental web API. It will only work if the experiment
2745 // is enabled and WebUSB feature is enabled. It should also not be available 2745 // is enabled and WebUSB feature is enabled. It should also not be available
2746 // to apps and extensions. 2746 // to apps and extensions.
2747 if (base::CommandLine::ForCurrentProcess()->HasSwitch( 2747 if (base::CommandLine::ForCurrentProcess()->HasSwitch(
2748 switches::kEnableExperimentalWebPlatformFeatures) && 2748 switches::kEnableExperimentalWebPlatformFeatures) &&
2749 base::FeatureList::IsEnabled(features::kWebUsb) 2749 base::FeatureList::IsEnabled(features::kWebUsb)
2750 #if defined(ENABLE_EXTENSIONS) 2750 #if defined(ENABLE_EXTENSIONS)
2751 && 2751 &&
2752 !render_frame_host->GetSiteInstance()->GetSiteURL().SchemeIs( 2752 !render_frame_host->GetSiteInstance()->GetSiteURL().SchemeIs(
2753 extensions::kExtensionScheme) 2753 extensions::kExtensionScheme)
2754 #endif 2754 #endif
2755 ) { 2755 ) {
2756 registry->AddService( 2756 registry->AddInterface(
2757 base::Bind(&CreateUsbDeviceManager, render_frame_host)); 2757 base::Bind(&CreateUsbDeviceManager, render_frame_host));
2758 registry->AddService( 2758 registry->AddInterface(
2759 base::Bind(&CreateWebUsbChooserService, render_frame_host)); 2759 base::Bind(&CreateWebUsbChooserService, render_frame_host));
2760 } 2760 }
2761 2761
2762 // Register mojo CredentialManager service only for main frame. 2762 // Register mojo CredentialManager service only for main frame.
2763 if (!render_frame_host->GetParent()) { 2763 if (!render_frame_host->GetParent()) {
2764 registry->AddService( 2764 registry->AddInterface(
2765 base::Bind(&ChromePasswordManagerClient::BindCredentialManager, 2765 base::Bind(&ChromePasswordManagerClient::BindCredentialManager,
2766 render_frame_host)); 2766 render_frame_host));
2767 } 2767 }
2768 2768
2769 registry->AddService( 2769 registry->AddInterface(
2770 base::Bind(&autofill::ContentAutofillDriverFactory::BindAutofillDriver, 2770 base::Bind(&autofill::ContentAutofillDriverFactory::BindAutofillDriver,
2771 render_frame_host)); 2771 render_frame_host));
2772 2772
2773 #if BUILDFLAG(ANDROID_JAVA_UI) 2773 #if BUILDFLAG(ANDROID_JAVA_UI)
2774 ChromeServiceRegistrarAndroid::RegisterRenderFrameMojoServices( 2774 ChromeServiceRegistrarAndroid::RegisterRenderFrameMojoInterfaces(
2775 registry, render_frame_host); 2775 registry, render_frame_host);
2776 #endif 2776 #endif
2777 } 2777 }
2778 2778
2779 void ChromeContentBrowserClient::RegisterInProcessMojoApplications( 2779 void ChromeContentBrowserClient::RegisterInProcessMojoApplications(
2780 StaticMojoApplicationMap* apps) { 2780 StaticMojoApplicationMap* apps) {
2781 #if (ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) 2781 #if (ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS)
2782 content::MojoApplicationInfo app_info; 2782 content::MojoApplicationInfo app_info;
2783 app_info.application_factory = base::Bind(&media::CreateMojoMediaApplication); 2783 app_info.application_factory = base::Bind(&media::CreateMojoMediaApplication);
2784 apps->insert(std::make_pair("mojo:media", app_info)); 2784 apps->insert(std::make_pair("mojo:media", app_info));
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
2957 if (channel <= kMaxDisableEncryptionChannel) { 2957 if (channel <= kMaxDisableEncryptionChannel) {
2958 static const char* const kWebRtcDevSwitchNames[] = { 2958 static const char* const kWebRtcDevSwitchNames[] = {
2959 switches::kDisableWebRtcEncryption, 2959 switches::kDisableWebRtcEncryption,
2960 }; 2960 };
2961 to_command_line->CopySwitchesFrom(from_command_line, 2961 to_command_line->CopySwitchesFrom(from_command_line,
2962 kWebRtcDevSwitchNames, 2962 kWebRtcDevSwitchNames,
2963 arraysize(kWebRtcDevSwitchNames)); 2963 arraysize(kWebRtcDevSwitchNames));
2964 } 2964 }
2965 } 2965 }
2966 #endif // defined(ENABLE_WEBRTC) 2966 #endif // defined(ENABLE_WEBRTC)
OLDNEW
« no previous file with comments | « chrome/browser/chrome_content_browser_client.h ('k') | chrome/browser/extensions/chrome_mojo_service_registration.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698