| 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 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 268 | 268 |
| 269 #if defined(ENABLE_WEBRTC) | 269 #if defined(ENABLE_WEBRTC) |
| 270 #include "chrome/browser/media/webrtc_logging_handler_host.h" | 270 #include "chrome/browser/media/webrtc_logging_handler_host.h" |
| 271 #endif | 271 #endif |
| 272 | 272 |
| 273 #if defined(ENABLE_MEDIA_ROUTER) | 273 #if defined(ENABLE_MEDIA_ROUTER) |
| 274 #include "chrome/browser/media/router/media_router_feature.h" | 274 #include "chrome/browser/media/router/media_router_feature.h" |
| 275 #include "chrome/browser/media/router/presentation_service_delegate_impl.h" | 275 #include "chrome/browser/media/router/presentation_service_delegate_impl.h" |
| 276 #endif | 276 #endif |
| 277 | 277 |
| 278 #if !defined(OS_ANDROID) && !defined(OS_IOS) |
| 279 #include "components/webusb/public/interfaces/webusb_permission_bubble.mojom.h" |
| 280 #endif |
| 281 |
| 278 using base::FileDescriptor; | 282 using base::FileDescriptor; |
| 279 using blink::WebWindowFeatures; | 283 using blink::WebWindowFeatures; |
| 280 using content::AccessTokenStore; | 284 using content::AccessTokenStore; |
| 281 using content::BrowserThread; | 285 using content::BrowserThread; |
| 282 using content::BrowserURLHandler; | 286 using content::BrowserURLHandler; |
| 283 using content::ChildProcessSecurityPolicy; | 287 using content::ChildProcessSecurityPolicy; |
| 284 using content::QuotaPermissionContext; | 288 using content::QuotaPermissionContext; |
| 285 using content::RenderFrameHost; | 289 using content::RenderFrameHost; |
| 286 using content::RenderViewHost; | 290 using content::RenderViewHost; |
| 287 using content::ResourceType; | 291 using content::ResourceType; |
| (...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 645 NOTREACHED(); | 649 NOTREACHED(); |
| 646 return; | 650 return; |
| 647 } | 651 } |
| 648 | 652 |
| 649 UsbTabHelper* tab_helper = | 653 UsbTabHelper* tab_helper = |
| 650 UsbTabHelper::GetOrCreateForWebContents(web_contents); | 654 UsbTabHelper::GetOrCreateForWebContents(web_contents); |
| 651 tab_helper->CreateDeviceManager(render_frame_host, request.Pass()); | 655 tab_helper->CreateDeviceManager(render_frame_host, request.Pass()); |
| 652 #endif // !defined(OS_ANDROID) && !defined(OS_IOS) | 656 #endif // !defined(OS_ANDROID) && !defined(OS_IOS) |
| 653 } | 657 } |
| 654 | 658 |
| 659 #if !defined(OS_ANDROID) && !defined(OS_IOS) |
| 660 void CreateWebUsbPermissionBubble( |
| 661 RenderFrameHost* render_frame_host, |
| 662 mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request) { |
| 663 WebContents* web_contents = |
| 664 WebContents::FromRenderFrameHost(render_frame_host); |
| 665 if (!web_contents) { |
| 666 NOTREACHED(); |
| 667 return; |
| 668 } |
| 669 |
| 670 UsbTabHelper* tab_helper = |
| 671 UsbTabHelper::GetOrCreateForWebContents(web_contents); |
| 672 tab_helper->CreatePermissionBubble(render_frame_host, request.Pass()); |
| 673 } |
| 674 #endif // !defined(OS_ANDROID) && !defined(OS_IOS) |
| 675 |
| 655 } // namespace | 676 } // namespace |
| 656 | 677 |
| 657 ChromeContentBrowserClient::ChromeContentBrowserClient() | 678 ChromeContentBrowserClient::ChromeContentBrowserClient() |
| 658 : | 679 : |
| 659 weak_factory_(this) { | 680 weak_factory_(this) { |
| 660 #if defined(ENABLE_PLUGINS) | 681 #if defined(ENABLE_PLUGINS) |
| 661 for (size_t i = 0; i < arraysize(kPredefinedAllowedDevChannelOrigins); ++i) | 682 for (size_t i = 0; i < arraysize(kPredefinedAllowedDevChannelOrigins); ++i) |
| 662 allowed_dev_channel_origins_.insert(kPredefinedAllowedDevChannelOrigins[i]); | 683 allowed_dev_channel_origins_.insert(kPredefinedAllowedDevChannelOrigins[i]); |
| 663 for (size_t i = 0; i < arraysize(kPredefinedAllowedFileHandleOrigins); ++i) | 684 for (size_t i = 0; i < arraysize(kPredefinedAllowedFileHandleOrigins); ++i) |
| 664 allowed_file_handle_origins_.insert(kPredefinedAllowedFileHandleOrigins[i]); | 685 allowed_file_handle_origins_.insert(kPredefinedAllowedFileHandleOrigins[i]); |
| (...skipping 1926 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2591 registry->AddService( | 2612 registry->AddService( |
| 2592 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create, | 2613 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create, |
| 2593 render_frame_host)); | 2614 render_frame_host)); |
| 2594 #endif | 2615 #endif |
| 2595 } | 2616 } |
| 2596 | 2617 |
| 2597 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices( | 2618 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices( |
| 2598 content::ServiceRegistry* registry, | 2619 content::ServiceRegistry* registry, |
| 2599 content::RenderFrameHost* render_frame_host) { | 2620 content::RenderFrameHost* render_frame_host) { |
| 2600 registry->AddService(base::Bind(&CreateUsbDeviceManager, render_frame_host)); | 2621 registry->AddService(base::Bind(&CreateUsbDeviceManager, render_frame_host)); |
| 2622 #if !defined(OS_ANDROID) && !defined(OS_IOS) |
| 2623 registry->AddService( |
| 2624 base::Bind(&CreateWebUsbPermissionBubble, render_frame_host)); |
| 2625 #endif // !defined(OS_ANDROID) && !defined(OS_IOS) |
| 2601 } | 2626 } |
| 2602 | 2627 |
| 2603 void ChromeContentBrowserClient::RegisterOutOfProcessMojoApplications( | 2628 void ChromeContentBrowserClient::RegisterOutOfProcessMojoApplications( |
| 2604 OutOfProcessMojoApplicationMap* apps) { | 2629 OutOfProcessMojoApplicationMap* apps) { |
| 2605 #if defined(ENABLE_MOJO_MEDIA_IN_UTILITY_PROCESS) | 2630 #if defined(ENABLE_MOJO_MEDIA_IN_UTILITY_PROCESS) |
| 2606 apps->insert(std::make_pair(GURL("mojo:media"), | 2631 apps->insert(std::make_pair(GURL("mojo:media"), |
| 2607 base::ASCIIToUTF16("Media App"))); | 2632 base::ASCIIToUTF16("Media App"))); |
| 2608 #endif | 2633 #endif |
| 2609 } | 2634 } |
| 2610 | 2635 |
| (...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2767 if (channel <= kMaxDisableEncryptionChannel) { | 2792 if (channel <= kMaxDisableEncryptionChannel) { |
| 2768 static const char* const kWebRtcDevSwitchNames[] = { | 2793 static const char* const kWebRtcDevSwitchNames[] = { |
| 2769 switches::kDisableWebRtcEncryption, | 2794 switches::kDisableWebRtcEncryption, |
| 2770 }; | 2795 }; |
| 2771 to_command_line->CopySwitchesFrom(from_command_line, | 2796 to_command_line->CopySwitchesFrom(from_command_line, |
| 2772 kWebRtcDevSwitchNames, | 2797 kWebRtcDevSwitchNames, |
| 2773 arraysize(kWebRtcDevSwitchNames)); | 2798 arraysize(kWebRtcDevSwitchNames)); |
| 2774 } | 2799 } |
| 2775 } | 2800 } |
| 2776 #endif // defined(ENABLE_WEBRTC) | 2801 #endif // defined(ENABLE_WEBRTC) |
| OLD | NEW |