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 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 #include "content/public/browser/site_instance.h" | 148 #include "content/public/browser/site_instance.h" |
149 #include "content/public/browser/web_contents.h" | 149 #include "content/public/browser/web_contents.h" |
150 #include "content/public/common/child_process_host.h" | 150 #include "content/public/common/child_process_host.h" |
151 #include "content/public/common/content_descriptors.h" | 151 #include "content/public/common/content_descriptors.h" |
152 #include "content/public/common/content_features.h" | 152 #include "content/public/common/content_features.h" |
153 #include "content/public/common/content_switches.h" | 153 #include "content/public/common/content_switches.h" |
154 #include "content/public/common/sandbox_type.h" | 154 #include "content/public/common/sandbox_type.h" |
155 #include "content/public/common/service_registry.h" | 155 #include "content/public/common/service_registry.h" |
156 #include "content/public/common/url_utils.h" | 156 #include "content/public/common/url_utils.h" |
157 #include "content/public/common/web_preferences.h" | 157 #include "content/public/common/web_preferences.h" |
| 158 #include "device/usb/public/interfaces/chooser_service.mojom.h" |
158 #include "device/usb/public/interfaces/device_manager.mojom.h" | 159 #include "device/usb/public/interfaces/device_manager.mojom.h" |
159 #include "gin/v8_initializer.h" | 160 #include "gin/v8_initializer.h" |
160 #include "mojo/shell/public/cpp/shell_client.h" | 161 #include "mojo/shell/public/cpp/shell_client.h" |
161 #include "net/base/mime_util.h" | 162 #include "net/base/mime_util.h" |
162 #include "net/cookies/canonical_cookie.h" | 163 #include "net/cookies/canonical_cookie.h" |
163 #include "net/cookies/cookie_options.h" | 164 #include "net/cookies/cookie_options.h" |
164 #include "net/ssl/ssl_cert_request_info.h" | 165 #include "net/ssl/ssl_cert_request_info.h" |
165 #include "ppapi/host/ppapi_host.h" | 166 #include "ppapi/host/ppapi_host.h" |
166 #include "storage/browser/fileapi/external_mount_points.h" | 167 #include "storage/browser/fileapi/external_mount_points.h" |
167 #include "ui/base/l10n/l10n_util.h" | 168 #include "ui/base/l10n/l10n_util.h" |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
287 | 288 |
288 #if defined(ENABLE_WEBRTC) | 289 #if defined(ENABLE_WEBRTC) |
289 #include "chrome/browser/media/webrtc_logging_handler_host.h" | 290 #include "chrome/browser/media/webrtc_logging_handler_host.h" |
290 #endif | 291 #endif |
291 | 292 |
292 #if defined(ENABLE_MEDIA_ROUTER) | 293 #if defined(ENABLE_MEDIA_ROUTER) |
293 #include "chrome/browser/media/router/media_router_feature.h" | 294 #include "chrome/browser/media/router/media_router_feature.h" |
294 #include "chrome/browser/media/router/presentation_service_delegate_impl.h" | 295 #include "chrome/browser/media/router/presentation_service_delegate_impl.h" |
295 #endif | 296 #endif |
296 | 297 |
297 #if !defined(OS_ANDROID) | |
298 #include "device/usb/public/interfaces/chooser_service.mojom.h" | |
299 #endif | |
300 | |
301 #if defined(ENABLE_WAYLAND_SERVER) | 298 #if defined(ENABLE_WAYLAND_SERVER) |
302 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h" | 299 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h" |
303 #endif | 300 #endif |
304 | 301 |
305 #if defined(ENABLE_MOJO_MEDIA) | 302 #if defined(ENABLE_MOJO_MEDIA) |
306 #include "chrome/browser/media/output_protection_impl.h" | 303 #include "chrome/browser/media/output_protection_impl.h" |
307 #endif | 304 #endif |
308 | 305 |
309 #if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) | 306 #if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) |
310 #include "media/mojo/services/mojo_media_application_factory.h" | 307 #include "media/mojo/services/mojo_media_application_factory.h" |
(...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
687 if (!web_contents) { | 684 if (!web_contents) { |
688 NOTREACHED(); | 685 NOTREACHED(); |
689 return; | 686 return; |
690 } | 687 } |
691 | 688 |
692 UsbTabHelper* tab_helper = | 689 UsbTabHelper* tab_helper = |
693 UsbTabHelper::GetOrCreateForWebContents(web_contents); | 690 UsbTabHelper::GetOrCreateForWebContents(web_contents); |
694 tab_helper->CreateDeviceManager(render_frame_host, std::move(request)); | 691 tab_helper->CreateDeviceManager(render_frame_host, std::move(request)); |
695 } | 692 } |
696 | 693 |
697 #if !defined(OS_ANDROID) | |
698 void CreateWebUsbChooserService( | 694 void CreateWebUsbChooserService( |
699 RenderFrameHost* render_frame_host, | 695 RenderFrameHost* render_frame_host, |
700 mojo::InterfaceRequest<device::usb::ChooserService> request) { | 696 mojo::InterfaceRequest<device::usb::ChooserService> request) { |
701 WebContents* web_contents = | 697 WebContents* web_contents = |
702 WebContents::FromRenderFrameHost(render_frame_host); | 698 WebContents::FromRenderFrameHost(render_frame_host); |
703 if (!web_contents) { | 699 if (!web_contents) { |
704 NOTREACHED(); | 700 NOTREACHED(); |
705 return; | 701 return; |
706 } | 702 } |
707 | 703 |
708 UsbTabHelper* tab_helper = | 704 UsbTabHelper* tab_helper = |
709 UsbTabHelper::GetOrCreateForWebContents(web_contents); | 705 UsbTabHelper::GetOrCreateForWebContents(web_contents); |
710 tab_helper->CreateChooserService(render_frame_host, std::move(request)); | 706 tab_helper->CreateChooserService(render_frame_host, std::move(request)); |
711 } | 707 } |
712 #endif // !defined(OS_ANDROID) | |
713 | 708 |
714 bool GetDataSaverEnabledPref(const PrefService* prefs) { | 709 bool GetDataSaverEnabledPref(const PrefService* prefs) { |
715 // Enable data saver only when data saver pref is enabled and not part of | 710 // Enable data saver only when data saver pref is enabled and not part of |
716 // "Disabled" group of "SaveDataHeader" experiment. | 711 // "Disabled" group of "SaveDataHeader" experiment. |
717 return prefs->GetBoolean(prefs::kDataSaverEnabled) && | 712 return prefs->GetBoolean(prefs::kDataSaverEnabled) && |
718 base::FieldTrialList::FindFullName("SaveDataHeader") | 713 base::FieldTrialList::FindFullName("SaveDataHeader") |
719 .compare("Disabled"); | 714 .compare("Disabled"); |
720 } | 715 } |
721 | 716 |
722 } // namespace | 717 } // namespace |
(...skipping 2078 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2801 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices( | 2796 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices( |
2802 content::ServiceRegistry* registry, | 2797 content::ServiceRegistry* registry, |
2803 content::RenderFrameHost* render_frame_host) { | 2798 content::RenderFrameHost* render_frame_host) { |
2804 // WebUSB is an experimental web API. It will only work if the experiment | 2799 // WebUSB is an experimental web API. It will only work if the experiment |
2805 // is enabled and WebUSB feature is enabled. | 2800 // is enabled and WebUSB feature is enabled. |
2806 if (base::CommandLine::ForCurrentProcess()->HasSwitch( | 2801 if (base::CommandLine::ForCurrentProcess()->HasSwitch( |
2807 switches::kEnableExperimentalWebPlatformFeatures) && | 2802 switches::kEnableExperimentalWebPlatformFeatures) && |
2808 base::FeatureList::IsEnabled(features::kWebUsb)) { | 2803 base::FeatureList::IsEnabled(features::kWebUsb)) { |
2809 registry->AddService( | 2804 registry->AddService( |
2810 base::Bind(&CreateUsbDeviceManager, render_frame_host)); | 2805 base::Bind(&CreateUsbDeviceManager, render_frame_host)); |
2811 #if !defined(OS_ANDROID) | |
2812 registry->AddService( | 2806 registry->AddService( |
2813 base::Bind(&CreateWebUsbChooserService, render_frame_host)); | 2807 base::Bind(&CreateWebUsbChooserService, render_frame_host)); |
2814 #endif // !defined(OS_ANDROID) | |
2815 } | 2808 } |
2816 } | 2809 } |
2817 | 2810 |
2818 void ChromeContentBrowserClient::RegisterInProcessMojoApplications( | 2811 void ChromeContentBrowserClient::RegisterInProcessMojoApplications( |
2819 StaticMojoApplicationMap* apps) { | 2812 StaticMojoApplicationMap* apps) { |
2820 #if (ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) | 2813 #if (ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) |
2821 apps->insert(std::make_pair("mojo:media", | 2814 apps->insert(std::make_pair("mojo:media", |
2822 base::Bind(&media::CreateMojoMediaApplication))); | 2815 base::Bind(&media::CreateMojoMediaApplication))); |
2823 #endif | 2816 #endif |
2824 } | 2817 } |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2986 if (channel <= kMaxDisableEncryptionChannel) { | 2979 if (channel <= kMaxDisableEncryptionChannel) { |
2987 static const char* const kWebRtcDevSwitchNames[] = { | 2980 static const char* const kWebRtcDevSwitchNames[] = { |
2988 switches::kDisableWebRtcEncryption, | 2981 switches::kDisableWebRtcEncryption, |
2989 }; | 2982 }; |
2990 to_command_line->CopySwitchesFrom(from_command_line, | 2983 to_command_line->CopySwitchesFrom(from_command_line, |
2991 kWebRtcDevSwitchNames, | 2984 kWebRtcDevSwitchNames, |
2992 arraysize(kWebRtcDevSwitchNames)); | 2985 arraysize(kWebRtcDevSwitchNames)); |
2993 } | 2986 } |
2994 } | 2987 } |
2995 #endif // defined(ENABLE_WEBRTC) | 2988 #endif // defined(ENABLE_WEBRTC) |
OLD | NEW |