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 240 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
251 #elif defined(OS_POSIX) | 251 #elif defined(OS_POSIX) |
252 #include "chrome/browser/chrome_browser_main_posix.h" | 252 #include "chrome/browser/chrome_browser_main_posix.h" |
253 #endif | 253 #endif |
254 | 254 |
255 #if defined(OS_POSIX) && !defined(OS_MACOSX) | 255 #if defined(OS_POSIX) && !defined(OS_MACOSX) |
256 #include "base/debug/leak_annotations.h" | 256 #include "base/debug/leak_annotations.h" |
257 #include "components/crash/content/app/breakpad_linux.h" | 257 #include "components/crash/content/app/breakpad_linux.h" |
258 #include "components/crash/content/browser/crash_handler_host_linux.h" | 258 #include "components/crash/content/browser/crash_handler_host_linux.h" |
259 #endif | 259 #endif |
260 | 260 |
261 #if BUILDFLAG(ANDROID_JAVA_UI) | 261 #if defined(OS_ANDROID) |
262 #include "chrome/browser/android/ntp/new_tab_page_url_handler.h" | 262 #include "chrome/browser/android/ntp/new_tab_page_url_handler.h" |
263 #include "chrome/browser/android/service_tab_launcher.h" | 263 #include "chrome/browser/android/service_tab_launcher.h" |
264 #include "chrome/browser/android/webapps/single_tab_mode_tab_helper.h" | 264 #include "chrome/browser/android/webapps/single_tab_mode_tab_helper.h" |
265 #include "content/public/browser/android/java_interfaces.h" | 265 #include "content/public/browser/android/java_interfaces.h" |
266 #endif | 266 #endif |
267 | 267 |
268 #if defined(OS_ANDROID) | 268 #if defined(OS_ANDROID) |
Ted C
2017/01/06 22:33:30
combine with above
F
2017/01/09 21:36:32
Done.
| |
269 #include "chrome/browser/android/devtools_manager_delegate_android.h" | 269 #include "chrome/browser/android/devtools_manager_delegate_android.h" |
270 #include "ui/base/ui_base_paths.h" | 270 #include "ui/base/ui_base_paths.h" |
271 #include "ui/gfx/android/device_display_info.h" | 271 #include "ui/gfx/android/device_display_info.h" |
272 #else | 272 #else |
273 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" | 273 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" |
274 #endif | 274 #endif |
275 | 275 |
276 #if defined(TOOLKIT_VIEWS) | 276 #if defined(TOOLKIT_VIEWS) |
277 #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views.h" | 277 #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views.h" |
278 #endif | 278 #endif |
(...skipping 409 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
688 const std::string& serialized_report) override { | 688 const std::string& serialized_report) override { |
689 service_->Send(serialized_report); | 689 service_->Send(serialized_report); |
690 } | 690 } |
691 | 691 |
692 private: | 692 private: |
693 CertificateReportingService* service_; | 693 CertificateReportingService* service_; |
694 | 694 |
695 DISALLOW_COPY_AND_ASSIGN(CertificateReportingServiceCertReporter); | 695 DISALLOW_COPY_AND_ASSIGN(CertificateReportingServiceCertReporter); |
696 }; | 696 }; |
697 | 697 |
698 #if BUILDFLAG(ANDROID_JAVA_UI) | 698 #if defined(OS_ANDROID) |
699 void HandleSingleTabModeBlockOnUIThread(const BlockedWindowParams& params) { | 699 void HandleSingleTabModeBlockOnUIThread(const BlockedWindowParams& params) { |
700 WebContents* web_contents = tab_util::GetWebContentsByFrameID( | 700 WebContents* web_contents = tab_util::GetWebContentsByFrameID( |
701 params.render_process_id(), params.opener_render_frame_id()); | 701 params.render_process_id(), params.opener_render_frame_id()); |
702 if (!web_contents) | 702 if (!web_contents) |
703 return; | 703 return; |
704 | 704 |
705 SingleTabModeTabHelper::FromWebContents(web_contents)->HandleOpenUrl(params); | 705 SingleTabModeTabHelper::FromWebContents(web_contents)->HandleOpenUrl(params); |
706 } | 706 } |
707 #endif // BUILDFLAG(ANDROID_JAVA_UI) | 707 #endif // defined(OS_ANDROID) |
708 | 708 |
709 #if defined(OS_ANDROID) | 709 #if defined(OS_ANDROID) |
Ted C
2017/01/06 22:33:30
combine with above
F
2017/01/09 21:36:32
Done.
| |
710 float GetDeviceScaleAdjustment() { | 710 float GetDeviceScaleAdjustment() { |
711 static const float kMinFSM = 1.05f; | 711 static const float kMinFSM = 1.05f; |
712 static const int kWidthForMinFSM = 320; | 712 static const int kWidthForMinFSM = 320; |
713 static const float kMaxFSM = 1.3f; | 713 static const float kMaxFSM = 1.3f; |
714 static const int kWidthForMaxFSM = 800; | 714 static const int kWidthForMaxFSM = 800; |
715 | 715 |
716 gfx::DeviceDisplayInfo info; | 716 gfx::DeviceDisplayInfo info; |
717 int minWidth = info.GetSmallestDIPWidth(); | 717 int minWidth = info.GetSmallestDIPWidth(); |
718 | 718 |
719 if (minWidth <= kWidthForMinFSM) | 719 if (minWidth <= kWidthForMinFSM) |
(...skipping 799 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1519 // this point. | 1519 // this point. |
1520 LOG(WARNING) << "Received field trial params, " | 1520 LOG(WARNING) << "Received field trial params, " |
1521 "but blink-settings switch already specified."; | 1521 "but blink-settings switch already specified."; |
1522 return; | 1522 return; |
1523 } | 1523 } |
1524 | 1524 |
1525 command_line->AppendSwitchASCII(switches::kBlinkSettings, | 1525 command_line->AppendSwitchASCII(switches::kBlinkSettings, |
1526 base::JoinString(blink_settings, ",")); | 1526 base::JoinString(blink_settings, ",")); |
1527 } | 1527 } |
1528 | 1528 |
1529 #if BUILDFLAG(ANDROID_JAVA_UI) | 1529 #if defined(OS_ANDROID) |
1530 void ForwardShareServiceRequest( | 1530 void ForwardShareServiceRequest( |
1531 base::WeakPtr<service_manager::InterfaceProvider> interface_provider, | 1531 base::WeakPtr<service_manager::InterfaceProvider> interface_provider, |
1532 blink::mojom::ShareServiceRequest request) { | 1532 blink::mojom::ShareServiceRequest request) { |
1533 if (!interface_provider || | 1533 if (!interface_provider || |
1534 ChromeOriginTrialPolicy().IsFeatureDisabled("WebShare")) { | 1534 ChromeOriginTrialPolicy().IsFeatureDisabled("WebShare")) { |
1535 return; | 1535 return; |
1536 } | 1536 } |
1537 interface_provider->GetInterface(std::move(request)); | 1537 interface_provider->GetInterface(std::move(request)); |
1538 } | 1538 } |
1539 #endif | 1539 #endif |
(...skipping 830 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2370 std::string()) != | 2370 std::string()) != |
2371 CONTENT_SETTING_ALLOW) { | 2371 CONTENT_SETTING_ALLOW) { |
2372 BrowserThread::PostTask(BrowserThread::UI, | 2372 BrowserThread::PostTask(BrowserThread::UI, |
2373 FROM_HERE, | 2373 FROM_HERE, |
2374 base::Bind(&HandleBlockedPopupOnUIThread, | 2374 base::Bind(&HandleBlockedPopupOnUIThread, |
2375 blocked_params)); | 2375 blocked_params)); |
2376 return false; | 2376 return false; |
2377 } | 2377 } |
2378 } | 2378 } |
2379 | 2379 |
2380 #if BUILDFLAG(ANDROID_JAVA_UI) | 2380 #if defined(OS_ANDROID) |
2381 if (SingleTabModeTabHelper::IsRegistered(opener_render_process_id, | 2381 if (SingleTabModeTabHelper::IsRegistered(opener_render_process_id, |
2382 opener_render_frame_id)) { | 2382 opener_render_frame_id)) { |
2383 BrowserThread::PostTask(BrowserThread::UI, | 2383 BrowserThread::PostTask(BrowserThread::UI, |
2384 FROM_HERE, | 2384 FROM_HERE, |
2385 base::Bind(&HandleSingleTabModeBlockOnUIThread, | 2385 base::Bind(&HandleSingleTabModeBlockOnUIThread, |
2386 blocked_params)); | 2386 blocked_params)); |
2387 return false; | 2387 return false; |
2388 } | 2388 } |
2389 #endif | 2389 #endif |
2390 | 2390 |
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2543 for (size_t i = 0; i < extra_parts_.size(); ++i) | 2543 for (size_t i = 0; i < extra_parts_.size(); ++i) |
2544 extra_parts_[i]->BrowserURLHandlerCreated(handler); | 2544 extra_parts_[i]->BrowserURLHandlerCreated(handler); |
2545 | 2545 |
2546 // about: handler. Must come before chrome: handler, since it will | 2546 // about: handler. Must come before chrome: handler, since it will |
2547 // rewrite about: urls to chrome: URLs and then expect chrome: to | 2547 // rewrite about: urls to chrome: URLs and then expect chrome: to |
2548 // actually handle them. Also relies on a preliminary fixup phase. | 2548 // actually handle them. Also relies on a preliminary fixup phase. |
2549 handler->SetFixupHandler(&FixupBrowserAboutURL); | 2549 handler->SetFixupHandler(&FixupBrowserAboutURL); |
2550 handler->AddHandlerPair(&WillHandleBrowserAboutURL, | 2550 handler->AddHandlerPair(&WillHandleBrowserAboutURL, |
2551 BrowserURLHandler::null_handler()); | 2551 BrowserURLHandler::null_handler()); |
2552 | 2552 |
2553 #if BUILDFLAG(ANDROID_JAVA_UI) | 2553 #if defined(OS_ANDROID) |
2554 // Handler to rewrite chrome://newtab on Android. | 2554 // Handler to rewrite chrome://newtab on Android. |
2555 handler->AddHandlerPair(&chrome::android::HandleAndroidNativePageURL, | 2555 handler->AddHandlerPair(&chrome::android::HandleAndroidNativePageURL, |
2556 BrowserURLHandler::null_handler()); | 2556 BrowserURLHandler::null_handler()); |
2557 #else | 2557 #else |
2558 // Handler to rewrite chrome://newtab for InstantExtended. | 2558 // Handler to rewrite chrome://newtab for InstantExtended. |
2559 handler->AddHandlerPair(&search::HandleNewTabURLRewrite, | 2559 handler->AddHandlerPair(&search::HandleNewTabURLRewrite, |
2560 &search::HandleNewTabURLReverseRewrite); | 2560 &search::HandleNewTabURLReverseRewrite); |
2561 #endif | 2561 #endif |
2562 | 2562 |
2563 // chrome: & friends. | 2563 // chrome: & friends. |
(...skipping 430 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2994 registry->AddInterface( | 2994 registry->AddInterface( |
2995 base::Bind(&password_manager::ContentPasswordManagerDriverFactory:: | 2995 base::Bind(&password_manager::ContentPasswordManagerDriverFactory:: |
2996 BindPasswordManagerDriver, | 2996 BindPasswordManagerDriver, |
2997 render_frame_host)); | 2997 render_frame_host)); |
2998 | 2998 |
2999 registry->AddInterface( | 2999 registry->AddInterface( |
3000 base::Bind(&password_manager::ContentPasswordManagerDriverFactory:: | 3000 base::Bind(&password_manager::ContentPasswordManagerDriverFactory:: |
3001 BindSensitiveInputVisibilityService, | 3001 BindSensitiveInputVisibilityService, |
3002 render_frame_host)); | 3002 render_frame_host)); |
3003 | 3003 |
3004 #if BUILDFLAG(ANDROID_JAVA_UI) | 3004 #if defined(OS_ANDROID) |
3005 content::WebContents* web_contents = | 3005 content::WebContents* web_contents = |
3006 content::WebContents::FromRenderFrameHost(render_frame_host); | 3006 content::WebContents::FromRenderFrameHost(render_frame_host); |
3007 if (web_contents) { | 3007 if (web_contents) { |
3008 registry->AddInterface( | 3008 registry->AddInterface( |
3009 web_contents->GetJavaInterfaces() | 3009 web_contents->GetJavaInterfaces() |
3010 ->CreateInterfaceFactory<payments::mojom::PaymentRequest>()); | 3010 ->CreateInterfaceFactory<payments::mojom::PaymentRequest>()); |
3011 registry->AddInterface( | 3011 registry->AddInterface( |
3012 base::Bind(&ForwardShareServiceRequest, | 3012 base::Bind(&ForwardShareServiceRequest, |
3013 web_contents->GetJavaInterfaces()->GetWeakPtr())); | 3013 web_contents->GetJavaInterfaces()->GetWeakPtr())); |
3014 } | 3014 } |
3015 #elif defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_WIN) | 3015 #elif defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_WIN) |
3016 if (AreExperimentalWebPlatformFeaturesEnabled()) { | 3016 if (AreExperimentalWebPlatformFeaturesEnabled()) { |
3017 content::WebContents* web_contents = | 3017 content::WebContents* web_contents = |
3018 content::WebContents::FromRenderFrameHost(render_frame_host); | 3018 content::WebContents::FromRenderFrameHost(render_frame_host); |
3019 if (web_contents) { | 3019 if (web_contents) { |
3020 registry->AddInterface( | 3020 registry->AddInterface( |
3021 base::Bind(CreatePaymentRequestHandler, web_contents)); | 3021 base::Bind(CreatePaymentRequestHandler, web_contents)); |
3022 } | 3022 } |
3023 } | 3023 } |
3024 #endif | 3024 #endif |
3025 | 3025 |
3026 #if defined(OS_ANDROID) | 3026 #if defined(OS_ANDROID) |
3027 if (AreExperimentalWebPlatformFeaturesEnabled()) { | 3027 if (AreExperimentalWebPlatformFeaturesEnabled()) { |
Ted C
2017/01/06 22:33:30
move up into one above?
F
2017/01/09 21:36:32
Done.
| |
3028 content::WebContents* web_contents = | 3028 content::WebContents* web_contents = |
3029 content::WebContents::FromRenderFrameHost(render_frame_host); | 3029 content::WebContents::FromRenderFrameHost(render_frame_host); |
3030 if (web_contents) { | 3030 if (web_contents) { |
3031 registry->AddInterface( | 3031 registry->AddInterface( |
3032 web_contents->GetJavaInterfaces() | 3032 web_contents->GetJavaInterfaces() |
3033 ->CreateInterfaceFactory<blink::mojom::BarcodeDetection>()); | 3033 ->CreateInterfaceFactory<blink::mojom::BarcodeDetection>()); |
3034 } | 3034 } |
3035 } | 3035 } |
3036 #endif | 3036 #endif |
3037 | 3037 |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3114 #endif // !defined(DISABLE_NACL) | 3114 #endif // !defined(DISABLE_NACL) |
3115 }); | 3115 }); |
3116 } | 3116 } |
3117 | 3117 |
3118 void ChromeContentBrowserClient::OpenURL( | 3118 void ChromeContentBrowserClient::OpenURL( |
3119 content::BrowserContext* browser_context, | 3119 content::BrowserContext* browser_context, |
3120 const content::OpenURLParams& params, | 3120 const content::OpenURLParams& params, |
3121 const base::Callback<void(content::WebContents*)>& callback) { | 3121 const base::Callback<void(content::WebContents*)>& callback) { |
3122 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 3122 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
3123 | 3123 |
3124 #if BUILDFLAG(ANDROID_JAVA_UI) | 3124 #if defined(OS_ANDROID) |
3125 ServiceTabLauncher::GetInstance()->LaunchTab(browser_context, params, | 3125 ServiceTabLauncher::GetInstance()->LaunchTab(browser_context, params, |
3126 callback); | 3126 callback); |
3127 #else | 3127 #else |
3128 chrome::NavigateParams nav_params( | 3128 chrome::NavigateParams nav_params( |
3129 Profile::FromBrowserContext(browser_context), | 3129 Profile::FromBrowserContext(browser_context), |
3130 params.url, | 3130 params.url, |
3131 params.transition); | 3131 params.transition); |
3132 FillNavigateParamsFromOpenURLParams(&nav_params, params); | 3132 FillNavigateParamsFromOpenURLParams(&nav_params, params); |
3133 nav_params.user_gesture = params.user_gesture; | 3133 nav_params.user_gesture = params.user_gesture; |
3134 | 3134 |
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3362 bool ChromeContentBrowserClient::ShouldRedirectDOMStorageTaskRunner() { | 3362 bool ChromeContentBrowserClient::ShouldRedirectDOMStorageTaskRunner() { |
3363 return variations::GetVariationParamValue( | 3363 return variations::GetVariationParamValue( |
3364 "BrowserScheduler", "RedirectDOMStorageTaskRunner") == "true"; | 3364 "BrowserScheduler", "RedirectDOMStorageTaskRunner") == "true"; |
3365 } | 3365 } |
3366 | 3366 |
3367 bool ChromeContentBrowserClient:: | 3367 bool ChromeContentBrowserClient:: |
3368 RedirectNonUINonIOBrowserThreadsToTaskScheduler() { | 3368 RedirectNonUINonIOBrowserThreadsToTaskScheduler() { |
3369 return variations::GetVariationParamValue( | 3369 return variations::GetVariationParamValue( |
3370 "BrowserScheduler", "RedirectNonUINonIOBrowserThreads") == "true"; | 3370 "BrowserScheduler", "RedirectNonUINonIOBrowserThreads") == "true"; |
3371 } | 3371 } |
OLD | NEW |