Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(192)

Side by Side Diff: chrome/browser/chrome_content_browser_client.cc

Issue 1408193003: Add chrome side webusb permission UI code (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: address felt@'s comments Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 255 matching lines...) Expand 10 before | Expand all | Expand 10 after
266 266
267 #if defined(ENABLE_WEBRTC) 267 #if defined(ENABLE_WEBRTC)
268 #include "chrome/browser/media/webrtc_logging_handler_host.h" 268 #include "chrome/browser/media/webrtc_logging_handler_host.h"
269 #endif 269 #endif
270 270
271 #if defined(ENABLE_MEDIA_ROUTER) 271 #if defined(ENABLE_MEDIA_ROUTER)
272 #include "chrome/browser/media/router/media_router_feature.h" 272 #include "chrome/browser/media/router/media_router_feature.h"
273 #include "chrome/browser/media/router/presentation_service_delegate_impl.h" 273 #include "chrome/browser/media/router/presentation_service_delegate_impl.h"
274 #endif 274 #endif
275 275
276 #if !defined(OS_ANDROID) && !defined(OS_IOS)
277 #include "components/webusb/public/interfaces/webusb_permission_bubble.mojom.h"
278 #endif
279
276 #if defined(ENABLE_WAYLAND_SERVER) 280 #if defined(ENABLE_WAYLAND_SERVER)
277 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h" 281 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h"
278 #endif 282 #endif
279 283
280 #if defined(OS_ANDROID) && !defined(USE_AURA) 284 #if defined(OS_ANDROID) && !defined(USE_AURA)
281 #include "chrome/browser/android/new_tab_page_url_handler.h" 285 #include "chrome/browser/android/new_tab_page_url_handler.h"
282 #include "chrome/browser/android/webapps/single_tab_mode_tab_helper.h" 286 #include "chrome/browser/android/webapps/single_tab_mode_tab_helper.h"
283 #include "components/service_tab_launcher/browser/android/service_tab_launcher.h " 287 #include "components/service_tab_launcher/browser/android/service_tab_launcher.h "
284 #endif 288 #endif
285 289
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after
654 if (!web_contents) { 658 if (!web_contents) {
655 NOTREACHED(); 659 NOTREACHED();
656 return; 660 return;
657 } 661 }
658 662
659 UsbTabHelper* tab_helper = 663 UsbTabHelper* tab_helper =
660 UsbTabHelper::GetOrCreateForWebContents(web_contents); 664 UsbTabHelper::GetOrCreateForWebContents(web_contents);
661 tab_helper->CreateDeviceManager(render_frame_host, request.Pass()); 665 tab_helper->CreateDeviceManager(render_frame_host, request.Pass());
662 } 666 }
663 667
668 #if !defined(OS_ANDROID) && !defined(OS_IOS)
669 void CreateWebUsbPermissionBubble(
670 RenderFrameHost* render_frame_host,
671 mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request) {
672 WebContents* web_contents =
673 WebContents::FromRenderFrameHost(render_frame_host);
674 if (!web_contents) {
675 NOTREACHED();
676 return;
677 }
678
679 UsbTabHelper* tab_helper =
680 UsbTabHelper::GetOrCreateForWebContents(web_contents);
681 tab_helper->CreatePermissionBubble(render_frame_host, request.Pass());
682 }
683 #endif // !defined(OS_ANDROID) && !defined(OS_IOS)
684
664 } // namespace 685 } // namespace
665 686
666 ChromeContentBrowserClient::ChromeContentBrowserClient() 687 ChromeContentBrowserClient::ChromeContentBrowserClient()
667 : 688 :
668 weak_factory_(this) { 689 weak_factory_(this) {
669 #if defined(ENABLE_PLUGINS) 690 #if defined(ENABLE_PLUGINS)
670 for (size_t i = 0; i < arraysize(kPredefinedAllowedDevChannelOrigins); ++i) 691 for (size_t i = 0; i < arraysize(kPredefinedAllowedDevChannelOrigins); ++i)
671 allowed_dev_channel_origins_.insert(kPredefinedAllowedDevChannelOrigins[i]); 692 allowed_dev_channel_origins_.insert(kPredefinedAllowedDevChannelOrigins[i]);
672 for (size_t i = 0; i < arraysize(kPredefinedAllowedFileHandleOrigins); ++i) 693 for (size_t i = 0; i < arraysize(kPredefinedAllowedFileHandleOrigins); ++i)
673 allowed_file_handle_origins_.insert(kPredefinedAllowedFileHandleOrigins[i]); 694 allowed_file_handle_origins_.insert(kPredefinedAllowedFileHandleOrigins[i]);
(...skipping 1940 matching lines...) Expand 10 before | Expand all | Expand 10 after
2614 registry->AddService( 2635 registry->AddService(
2615 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create, 2636 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create,
2616 render_frame_host)); 2637 render_frame_host));
2617 #endif 2638 #endif
2618 } 2639 }
2619 2640
2620 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices( 2641 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices(
2621 content::ServiceRegistry* registry, 2642 content::ServiceRegistry* registry,
2622 content::RenderFrameHost* render_frame_host) { 2643 content::RenderFrameHost* render_frame_host) {
2623 registry->AddService(base::Bind(&CreateUsbDeviceManager, render_frame_host)); 2644 registry->AddService(base::Bind(&CreateUsbDeviceManager, render_frame_host));
2645 #if !defined(OS_ANDROID) && !defined(OS_IOS)
2646 registry->AddService(
2647 base::Bind(&CreateWebUsbPermissionBubble, render_frame_host));
2648 #endif // !defined(OS_ANDROID) && !defined(OS_IOS)
2624 } 2649 }
2625 2650
2626 void ChromeContentBrowserClient::RegisterOutOfProcessMojoApplications( 2651 void ChromeContentBrowserClient::RegisterOutOfProcessMojoApplications(
2627 OutOfProcessMojoApplicationMap* apps) { 2652 OutOfProcessMojoApplicationMap* apps) {
2628 #if defined(ENABLE_MOJO_MEDIA_IN_UTILITY_PROCESS) 2653 #if defined(ENABLE_MOJO_MEDIA_IN_UTILITY_PROCESS)
2629 apps->insert(std::make_pair(GURL("mojo:media"), 2654 apps->insert(std::make_pair(GURL("mojo:media"),
2630 base::ASCIIToUTF16("Media App"))); 2655 base::ASCIIToUTF16("Media App")));
2631 #endif 2656 #endif
2632 } 2657 }
2633 2658
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
2792 if (channel <= kMaxDisableEncryptionChannel) { 2817 if (channel <= kMaxDisableEncryptionChannel) {
2793 static const char* const kWebRtcDevSwitchNames[] = { 2818 static const char* const kWebRtcDevSwitchNames[] = {
2794 switches::kDisableWebRtcEncryption, 2819 switches::kDisableWebRtcEncryption,
2795 }; 2820 };
2796 to_command_line->CopySwitchesFrom(from_command_line, 2821 to_command_line->CopySwitchesFrom(from_command_line,
2797 kWebRtcDevSwitchNames, 2822 kWebRtcDevSwitchNames,
2798 arraysize(kWebRtcDevSwitchNames)); 2823 arraysize(kWebRtcDevSwitchNames));
2799 } 2824 }
2800 } 2825 }
2801 #endif // defined(ENABLE_WEBRTC) 2826 #endif // defined(ENABLE_WEBRTC)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698