| 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 30 matching lines...) Expand all Loading... |
| 41 #include "chrome/browser/chrome_net_benchmarking_message_filter.h" | 41 #include "chrome/browser/chrome_net_benchmarking_message_filter.h" |
| 42 #include "chrome/browser/chrome_quota_permission_context.h" | 42 #include "chrome/browser/chrome_quota_permission_context.h" |
| 43 #include "chrome/browser/content_settings/cookie_settings_factory.h" | 43 #include "chrome/browser/content_settings/cookie_settings_factory.h" |
| 44 #include "chrome/browser/content_settings/host_content_settings_map_factory.h" | 44 #include "chrome/browser/content_settings/host_content_settings_map_factory.h" |
| 45 #include "chrome/browser/content_settings/tab_specific_content_settings.h" | 45 #include "chrome/browser/content_settings/tab_specific_content_settings.h" |
| 46 #include "chrome/browser/defaults.h" | 46 #include "chrome/browser/defaults.h" |
| 47 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" | 47 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" |
| 48 #include "chrome/browser/download/download_prefs.h" | 48 #include "chrome/browser/download/download_prefs.h" |
| 49 #include "chrome/browser/engagement/site_engagement_eviction_policy.h" | 49 #include "chrome/browser/engagement/site_engagement_eviction_policy.h" |
| 50 #include "chrome/browser/font_family_cache.h" | 50 #include "chrome/browser/font_family_cache.h" |
| 51 #include "chrome/browser/geolocation/chrome_access_token_store.h" | |
| 52 #include "chrome/browser/media/media_capture_devices_dispatcher.h" | 51 #include "chrome/browser/media/media_capture_devices_dispatcher.h" |
| 53 #include "chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h" | 52 #include "chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h" |
| 54 #include "chrome/browser/nacl_host/nacl_browser_delegate_impl.h" | 53 #include "chrome/browser/nacl_host/nacl_browser_delegate_impl.h" |
| 55 #include "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings.h" | 54 #include "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings.h" |
| 56 #include "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings_fact
ory.h" | 55 #include "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings_fact
ory.h" |
| 57 #include "chrome/browser/notifications/platform_notification_service_impl.h" | 56 #include "chrome/browser/notifications/platform_notification_service_impl.h" |
| 58 #include "chrome/browser/password_manager/chrome_password_manager_client.h" | 57 #include "chrome/browser/password_manager/chrome_password_manager_client.h" |
| 59 #include "chrome/browser/permissions/permission_context_base.h" | 58 #include "chrome/browser/permissions/permission_context_base.h" |
| 60 #include "chrome/browser/platform_util.h" | 59 #include "chrome/browser/platform_util.h" |
| 61 #include "chrome/browser/prerender/prerender_final_status.h" | 60 #include "chrome/browser/prerender/prerender_final_status.h" |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 139 #include "components/variations/variations_associated_data.h" | 138 #include "components/variations/variations_associated_data.h" |
| 140 #include "components/version_info/version_info.h" | 139 #include "components/version_info/version_info.h" |
| 141 #include "content/public/browser/browser_child_process_host.h" | 140 #include "content/public/browser/browser_child_process_host.h" |
| 142 #include "content/public/browser/browser_main_parts.h" | 141 #include "content/public/browser/browser_main_parts.h" |
| 143 #include "content/public/browser/browser_ppapi_host.h" | 142 #include "content/public/browser/browser_ppapi_host.h" |
| 144 #include "content/public/browser/browser_thread.h" | 143 #include "content/public/browser/browser_thread.h" |
| 145 #include "content/public/browser/browser_url_handler.h" | 144 #include "content/public/browser/browser_url_handler.h" |
| 146 #include "content/public/browser/child_process_data.h" | 145 #include "content/public/browser/child_process_data.h" |
| 147 #include "content/public/browser/child_process_security_policy.h" | 146 #include "content/public/browser/child_process_security_policy.h" |
| 148 #include "content/public/browser/client_certificate_delegate.h" | 147 #include "content/public/browser/client_certificate_delegate.h" |
| 149 #include "content/public/browser/geolocation_delegate.h" | |
| 150 #include "content/public/browser/navigation_handle.h" | 148 #include "content/public/browser/navigation_handle.h" |
| 151 #include "content/public/browser/navigation_throttle.h" | 149 #include "content/public/browser/navigation_throttle.h" |
| 152 #include "content/public/browser/render_frame_host.h" | 150 #include "content/public/browser/render_frame_host.h" |
| 153 #include "content/public/browser/render_process_host.h" | 151 #include "content/public/browser/render_process_host.h" |
| 154 #include "content/public/browser/render_view_host.h" | 152 #include "content/public/browser/render_view_host.h" |
| 155 #include "content/public/browser/resource_context.h" | 153 #include "content/public/browser/resource_context.h" |
| 156 #include "content/public/browser/site_instance.h" | 154 #include "content/public/browser/site_instance.h" |
| 157 #include "content/public/browser/storage_partition.h" | 155 #include "content/public/browser/storage_partition.h" |
| 158 #include "content/public/browser/vpn_service_proxy.h" | 156 #include "content/public/browser/vpn_service_proxy.h" |
| 159 #include "content/public/browser/web_contents.h" | 157 #include "content/public/browser/web_contents.h" |
| (...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 326 #if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) | 324 #if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) |
| 327 #include "media/mojo/services/mojo_media_application_factory.h" // nogncheck | 325 #include "media/mojo/services/mojo_media_application_factory.h" // nogncheck |
| 328 #endif | 326 #endif |
| 329 | 327 |
| 330 #if defined(OS_CHROMEOS) | 328 #if defined(OS_CHROMEOS) |
| 331 #include "chrome/browser/metrics/leak_detector/leak_detector_remote_controller.h
" | 329 #include "chrome/browser/metrics/leak_detector/leak_detector_remote_controller.h
" |
| 332 #endif | 330 #endif |
| 333 | 331 |
| 334 using base::FileDescriptor; | 332 using base::FileDescriptor; |
| 335 using blink::WebWindowFeatures; | 333 using blink::WebWindowFeatures; |
| 336 using content::AccessTokenStore; | |
| 337 using content::BrowserThread; | 334 using content::BrowserThread; |
| 338 using content::BrowserURLHandler; | 335 using content::BrowserURLHandler; |
| 339 using content::ChildProcessSecurityPolicy; | 336 using content::ChildProcessSecurityPolicy; |
| 340 using content::QuotaPermissionContext; | 337 using content::QuotaPermissionContext; |
| 341 using content::RenderFrameHost; | 338 using content::RenderFrameHost; |
| 342 using content::RenderViewHost; | 339 using content::RenderViewHost; |
| 343 using content::ResourceType; | 340 using content::ResourceType; |
| 344 using content::SiteInstance; | 341 using content::SiteInstance; |
| 345 using content::WebContents; | 342 using content::WebContents; |
| 346 using content::WebPreferences; | 343 using content::WebPreferences; |
| (...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 632 safe_browsing_ui_manager_->ReportInvalidCertificateChain( | 629 safe_browsing_ui_manager_->ReportInvalidCertificateChain( |
| 633 serialized_report, base::Bind(&base::DoNothing)); | 630 serialized_report, base::Bind(&base::DoNothing)); |
| 634 } | 631 } |
| 635 } | 632 } |
| 636 | 633 |
| 637 private: | 634 private: |
| 638 const scoped_refptr<safe_browsing::SafeBrowsingUIManager> | 635 const scoped_refptr<safe_browsing::SafeBrowsingUIManager> |
| 639 safe_browsing_ui_manager_; | 636 safe_browsing_ui_manager_; |
| 640 }; | 637 }; |
| 641 | 638 |
| 642 // A provider of Geolocation services to override AccessTokenStore. | |
| 643 class ChromeGeolocationDelegate : public content::GeolocationDelegate { | |
| 644 public: | |
| 645 ChromeGeolocationDelegate() = default; | |
| 646 | |
| 647 scoped_refptr<AccessTokenStore> CreateAccessTokenStore() final { | |
| 648 return new ChromeAccessTokenStore(); | |
| 649 } | |
| 650 | |
| 651 private: | |
| 652 DISALLOW_COPY_AND_ASSIGN(ChromeGeolocationDelegate); | |
| 653 }; | |
| 654 | |
| 655 #if BUILDFLAG(ANDROID_JAVA_UI) | 639 #if BUILDFLAG(ANDROID_JAVA_UI) |
| 656 void HandleSingleTabModeBlockOnUIThread(const BlockedWindowParams& params) { | 640 void HandleSingleTabModeBlockOnUIThread(const BlockedWindowParams& params) { |
| 657 WebContents* web_contents = tab_util::GetWebContentsByFrameID( | 641 WebContents* web_contents = tab_util::GetWebContentsByFrameID( |
| 658 params.render_process_id(), params.opener_render_frame_id()); | 642 params.render_process_id(), params.opener_render_frame_id()); |
| 659 if (!web_contents) | 643 if (!web_contents) |
| 660 return; | 644 return; |
| 661 | 645 |
| 662 SingleTabModeTabHelper::FromWebContents(web_contents)->HandleOpenUrl(params); | 646 SingleTabModeTabHelper::FromWebContents(web_contents)->HandleOpenUrl(params); |
| 663 } | 647 } |
| 664 #endif // BUILDFLAG(ANDROID_JAVA_UI) | 648 #endif // BUILDFLAG(ANDROID_JAVA_UI) |
| (...skipping 1641 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2306 | 2290 |
| 2307 content::SpeechRecognitionManagerDelegate* | 2291 content::SpeechRecognitionManagerDelegate* |
| 2308 ChromeContentBrowserClient::CreateSpeechRecognitionManagerDelegate() { | 2292 ChromeContentBrowserClient::CreateSpeechRecognitionManagerDelegate() { |
| 2309 return new speech::ChromeSpeechRecognitionManagerDelegate(); | 2293 return new speech::ChromeSpeechRecognitionManagerDelegate(); |
| 2310 } | 2294 } |
| 2311 | 2295 |
| 2312 net::NetLog* ChromeContentBrowserClient::GetNetLog() { | 2296 net::NetLog* ChromeContentBrowserClient::GetNetLog() { |
| 2313 return g_browser_process->net_log(); | 2297 return g_browser_process->net_log(); |
| 2314 } | 2298 } |
| 2315 | 2299 |
| 2316 content::GeolocationDelegate* | |
| 2317 ChromeContentBrowserClient::CreateGeolocationDelegate() { | |
| 2318 return new ChromeGeolocationDelegate(); | |
| 2319 } | |
| 2320 | |
| 2321 bool ChromeContentBrowserClient::IsFastShutdownPossible() { | 2300 bool ChromeContentBrowserClient::IsFastShutdownPossible() { |
| 2322 return true; | 2301 return true; |
| 2323 } | 2302 } |
| 2324 | 2303 |
| 2325 void ChromeContentBrowserClient::OverrideWebkitPrefs( | 2304 void ChromeContentBrowserClient::OverrideWebkitPrefs( |
| 2326 RenderViewHost* rvh, WebPreferences* web_prefs) { | 2305 RenderViewHost* rvh, WebPreferences* web_prefs) { |
| 2327 Profile* profile = Profile::FromBrowserContext( | 2306 Profile* profile = Profile::FromBrowserContext( |
| 2328 rvh->GetProcess()->GetBrowserContext()); | 2307 rvh->GetProcess()->GetBrowserContext()); |
| 2329 PrefService* prefs = profile->GetPrefs(); | 2308 PrefService* prefs = profile->GetPrefs(); |
| 2330 | 2309 |
| (...skipping 752 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3083 if (channel <= kMaxDisableEncryptionChannel) { | 3062 if (channel <= kMaxDisableEncryptionChannel) { |
| 3084 static const char* const kWebRtcDevSwitchNames[] = { | 3063 static const char* const kWebRtcDevSwitchNames[] = { |
| 3085 switches::kDisableWebRtcEncryption, | 3064 switches::kDisableWebRtcEncryption, |
| 3086 }; | 3065 }; |
| 3087 to_command_line->CopySwitchesFrom(from_command_line, | 3066 to_command_line->CopySwitchesFrom(from_command_line, |
| 3088 kWebRtcDevSwitchNames, | 3067 kWebRtcDevSwitchNames, |
| 3089 arraysize(kWebRtcDevSwitchNames)); | 3068 arraysize(kWebRtcDevSwitchNames)); |
| 3090 } | 3069 } |
| 3091 } | 3070 } |
| 3092 #endif // defined(ENABLE_WEBRTC) | 3071 #endif // defined(ENABLE_WEBRTC) |
| OLD | NEW |