| OLD | NEW |
| 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 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 186 #include "content/public/common/url_utils.h" | 186 #include "content/public/common/url_utils.h" |
| 187 #include "content/public/common/web_preferences.h" | 187 #include "content/public/common/web_preferences.h" |
| 188 #include "device/bluetooth/adapter_factory.h" | 188 #include "device/bluetooth/adapter_factory.h" |
| 189 #include "device/bluetooth/public/interfaces/adapter.mojom.h" | 189 #include "device/bluetooth/public/interfaces/adapter.mojom.h" |
| 190 #include "device/usb/public/interfaces/chooser_service.mojom.h" | 190 #include "device/usb/public/interfaces/chooser_service.mojom.h" |
| 191 #include "device/usb/public/interfaces/device_manager.mojom.h" | 191 #include "device/usb/public/interfaces/device_manager.mojom.h" |
| 192 #include "extensions/features/features.h" | 192 #include "extensions/features/features.h" |
| 193 #include "gpu/config/gpu_switches.h" | 193 #include "gpu/config/gpu_switches.h" |
| 194 #include "media/audio/audio_manager.h" | 194 #include "media/audio/audio_manager.h" |
| 195 #include "media/media_features.h" | 195 #include "media/media_features.h" |
| 196 #include "media/mojo/features.h" |
| 196 #include "net/base/mime_util.h" | 197 #include "net/base/mime_util.h" |
| 197 #include "net/base/registry_controlled_domains/registry_controlled_domain.h" | 198 #include "net/base/registry_controlled_domains/registry_controlled_domain.h" |
| 198 #include "net/cookies/canonical_cookie.h" | 199 #include "net/cookies/canonical_cookie.h" |
| 199 #include "net/cookies/cookie_options.h" | 200 #include "net/cookies/cookie_options.h" |
| 200 #include "net/ssl/ssl_cert_request_info.h" | 201 #include "net/ssl/ssl_cert_request_info.h" |
| 201 #include "ppapi/features/features.h" | 202 #include "ppapi/features/features.h" |
| 202 #include "ppapi/host/ppapi_host.h" | 203 #include "ppapi/host/ppapi_host.h" |
| 203 #include "printing/features/features.h" | 204 #include "printing/features/features.h" |
| 204 #include "services/preferences/public/interfaces/preferences.mojom.h" | 205 #include "services/preferences/public/interfaces/preferences.mojom.h" |
| 205 #include "services/service_manager/public/cpp/binder_registry.h" | 206 #include "services/service_manager/public/cpp/binder_registry.h" |
| (...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 375 #endif | 376 #endif |
| 376 | 377 |
| 377 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) | 378 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) |
| 378 #include "chrome/browser/media/cast_remoting_connector.h" | 379 #include "chrome/browser/media/cast_remoting_connector.h" |
| 379 #endif | 380 #endif |
| 380 | 381 |
| 381 #if BUILDFLAG(ENABLE_WAYLAND_SERVER) | 382 #if BUILDFLAG(ENABLE_WAYLAND_SERVER) |
| 382 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h" | 383 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h" |
| 383 #endif | 384 #endif |
| 384 | 385 |
| 385 #if defined(ENABLE_MOJO_MEDIA) | 386 #if BUILDFLAG(ENABLE_MOJO_MEDIA) |
| 386 #include "chrome/browser/media/output_protection_impl.h" | 387 #include "chrome/browser/media/output_protection_impl.h" |
| 387 #if defined(ENABLE_MOJO_CDM) && defined(OS_ANDROID) | 388 #if BUILDFLAG(ENABLE_MOJO_CDM) && defined(OS_ANDROID) |
| 388 #include "chrome/browser/media/android/cdm/media_drm_storage_factory.h" | 389 #include "chrome/browser/media/android/cdm/media_drm_storage_factory.h" |
| 389 #endif | 390 #endif |
| 390 #endif | 391 #endif |
| 391 | 392 |
| 392 #if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) | 393 #if BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) |
| 393 #include "media/mojo/services/media_service_factory.h" // nogncheck | 394 #include "media/mojo/services/media_service_factory.h" // nogncheck |
| 394 #endif | 395 #endif |
| 395 | 396 |
| 396 #if defined(OS_CHROMEOS) | 397 #if defined(OS_CHROMEOS) |
| 397 #include "chrome/browser/metrics/leak_detector/leak_detector_remote_controller.h
" | 398 #include "chrome/browser/metrics/leak_detector/leak_detector_remote_controller.h
" |
| 398 #endif | 399 #endif |
| 399 | 400 |
| 400 #if BUILDFLAG(ENABLE_SUPERVISED_USERS) | 401 #if BUILDFLAG(ENABLE_SUPERVISED_USERS) |
| 401 #include "chrome/browser/supervised_user/supervised_user_navigation_throttle.h" | 402 #include "chrome/browser/supervised_user/supervised_user_navigation_throttle.h" |
| 402 #endif | 403 #endif |
| (...skipping 2740 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3143 void ChromeContentBrowserClient::ExposeInterfacesToMediaService( | 3144 void ChromeContentBrowserClient::ExposeInterfacesToMediaService( |
| 3144 service_manager::BinderRegistry* registry, | 3145 service_manager::BinderRegistry* registry, |
| 3145 content::RenderFrameHost* render_frame_host) { | 3146 content::RenderFrameHost* render_frame_host) { |
| 3146 // TODO(xhwang): Only register this when ENABLE_MOJO_MEDIA. | 3147 // TODO(xhwang): Only register this when ENABLE_MOJO_MEDIA. |
| 3147 #if defined(OS_CHROMEOS) | 3148 #if defined(OS_CHROMEOS) |
| 3148 registry->AddInterface( | 3149 registry->AddInterface( |
| 3149 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create, | 3150 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create, |
| 3150 render_frame_host)); | 3151 render_frame_host)); |
| 3151 #endif // defined(OS_CHROMEOS) | 3152 #endif // defined(OS_CHROMEOS) |
| 3152 | 3153 |
| 3153 #if defined(ENABLE_MOJO_MEDIA) | 3154 #if BUILDFLAG(ENABLE_MOJO_MEDIA) |
| 3154 registry->AddInterface( | 3155 registry->AddInterface( |
| 3155 base::Bind(&OutputProtectionImpl::Create, render_frame_host)); | 3156 base::Bind(&OutputProtectionImpl::Create, render_frame_host)); |
| 3156 #if defined(ENABLE_MOJO_CDM) && defined(OS_ANDROID) | 3157 #if BUILDFLAG(ENABLE_MOJO_CDM) && defined(OS_ANDROID) |
| 3157 registry->AddInterface( | 3158 registry->AddInterface( |
| 3158 base::Bind(&chrome::CreateMediaDrmStorage, render_frame_host)); | 3159 base::Bind(&chrome::CreateMediaDrmStorage, render_frame_host)); |
| 3159 #endif | 3160 #endif |
| 3160 #endif // defined(ENABLE_MOJO_MEDIA) | 3161 #endif // BUILDFLAG(ENABLE_MOJO_MEDIA) |
| 3161 } | 3162 } |
| 3162 | 3163 |
| 3163 void ChromeContentBrowserClient::ExposeInterfacesToFrame( | 3164 void ChromeContentBrowserClient::ExposeInterfacesToFrame( |
| 3164 service_manager::BinderRegistry* registry, | 3165 service_manager::BinderRegistry* registry, |
| 3165 content::RenderFrameHost* render_frame_host) { | 3166 content::RenderFrameHost* render_frame_host) { |
| 3166 if (base::FeatureList::IsEnabled(features::kWebUsb) | 3167 if (base::FeatureList::IsEnabled(features::kWebUsb) |
| 3167 #if BUILDFLAG(ENABLE_EXTENSIONS) | 3168 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 3168 && | 3169 && |
| 3169 !render_frame_host->GetSiteInstance()->GetSiteURL().SchemeIs( | 3170 !render_frame_host->GetSiteInstance()->GetSiteURL().SchemeIs( |
| 3170 extensions::kExtensionScheme) | 3171 extensions::kExtensionScheme) |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3241 mojo::ScopedMessagePipeHandle* interface_pipe) { | 3242 mojo::ScopedMessagePipeHandle* interface_pipe) { |
| 3242 if (source_info.identity.name() == content::mojom::kGpuServiceName && | 3243 if (source_info.identity.name() == content::mojom::kGpuServiceName && |
| 3243 gpu_binder_registry_.CanBindInterface(interface_name)) { | 3244 gpu_binder_registry_.CanBindInterface(interface_name)) { |
| 3244 gpu_binder_registry_.BindInterface(source_info, interface_name, | 3245 gpu_binder_registry_.BindInterface(source_info, interface_name, |
| 3245 std::move(*interface_pipe)); | 3246 std::move(*interface_pipe)); |
| 3246 } | 3247 } |
| 3247 } | 3248 } |
| 3248 | 3249 |
| 3249 void ChromeContentBrowserClient::RegisterInProcessServices( | 3250 void ChromeContentBrowserClient::RegisterInProcessServices( |
| 3250 StaticServiceMap* services) { | 3251 StaticServiceMap* services) { |
| 3251 #if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) | 3252 #if BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) |
| 3252 content::ServiceInfo info; | 3253 content::ServiceInfo info; |
| 3253 info.factory = base::Bind(&media::CreateMediaService); | 3254 info.factory = base::Bind(&media::CreateMediaService); |
| 3254 services->insert(std::make_pair("media", info)); | 3255 services->insert(std::make_pair("media", info)); |
| 3255 #endif | 3256 #endif |
| 3256 #if defined(OS_CHROMEOS) | 3257 #if defined(OS_CHROMEOS) |
| 3257 { | 3258 { |
| 3258 content::ServiceInfo info; | 3259 content::ServiceInfo info; |
| 3259 info.factory = base::Bind(&ChromeServiceChromeOS::CreateService); | 3260 info.factory = base::Bind(&ChromeServiceChromeOS::CreateService); |
| 3260 info.task_runner = base::ThreadTaskRunnerHandle::Get(); | 3261 info.task_runner = base::ThreadTaskRunnerHandle::Get(); |
| 3261 services->insert(std::make_pair(kChromeServiceName, info)); | 3262 services->insert(std::make_pair(kChromeServiceName, info)); |
| (...skipping 14 matching lines...) Expand all Loading... |
| 3276 info.factory = base::Bind(&ash_util::CreateEmbeddedAshService, | 3277 info.factory = base::Bind(&ash_util::CreateEmbeddedAshService, |
| 3277 base::ThreadTaskRunnerHandle::Get()); | 3278 base::ThreadTaskRunnerHandle::Get()); |
| 3278 info.task_runner = base::ThreadTaskRunnerHandle::Get(); | 3279 info.task_runner = base::ThreadTaskRunnerHandle::Get(); |
| 3279 services->insert(std::make_pair(ash::mojom::kServiceName, info)); | 3280 services->insert(std::make_pair(ash::mojom::kServiceName, info)); |
| 3280 } | 3281 } |
| 3281 #endif // OS_CHROMEOS | 3282 #endif // OS_CHROMEOS |
| 3282 } | 3283 } |
| 3283 | 3284 |
| 3284 void ChromeContentBrowserClient::RegisterOutOfProcessServices( | 3285 void ChromeContentBrowserClient::RegisterOutOfProcessServices( |
| 3285 OutOfProcessServiceMap* services) { | 3286 OutOfProcessServiceMap* services) { |
| 3286 #if defined(ENABLE_MOJO_MEDIA_IN_UTILITY_PROCESS) | 3287 #if BUILDFLAG(ENABLE_MOJO_MEDIA_IN_UTILITY_PROCESS) |
| 3287 services->insert(std::make_pair("media", | 3288 services->insert(std::make_pair("media", |
| 3288 base::ASCIIToUTF16("Media Service"))); | 3289 base::ASCIIToUTF16("Media Service"))); |
| 3289 #endif | 3290 #endif |
| 3290 } | 3291 } |
| 3291 | 3292 |
| 3292 std::unique_ptr<base::Value> | 3293 std::unique_ptr<base::Value> |
| 3293 ChromeContentBrowserClient::GetServiceManifestOverlay(base::StringPiece name) { | 3294 ChromeContentBrowserClient::GetServiceManifestOverlay(base::StringPiece name) { |
| 3294 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); | 3295 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); |
| 3295 int id = -1; | 3296 int id = -1; |
| 3296 if (name == content::mojom::kBrowserServiceName) | 3297 if (name == content::mojom::kBrowserServiceName) |
| (...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3605 RedirectNonUINonIOBrowserThreadsToTaskScheduler() { | 3606 RedirectNonUINonIOBrowserThreadsToTaskScheduler() { |
| 3606 return variations::GetVariationParamValue( | 3607 return variations::GetVariationParamValue( |
| 3607 "BrowserScheduler", "RedirectNonUINonIOBrowserThreads") == "true"; | 3608 "BrowserScheduler", "RedirectNonUINonIOBrowserThreads") == "true"; |
| 3608 } | 3609 } |
| 3609 | 3610 |
| 3610 // static | 3611 // static |
| 3611 void ChromeContentBrowserClient::SetDefaultQuotaSettingsForTesting( | 3612 void ChromeContentBrowserClient::SetDefaultQuotaSettingsForTesting( |
| 3612 const storage::QuotaSettings* settings) { | 3613 const storage::QuotaSettings* settings) { |
| 3613 g_default_quota_settings = settings; | 3614 g_default_quota_settings = settings; |
| 3614 } | 3615 } |
| OLD | NEW |