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

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 sky@'s comments, added TODO to chrome_bubble_manager.cc 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
« no previous file with comments | « chrome/app/generated_resources.grd ('k') | chrome/browser/ui/chrome_bubble_manager.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 262 matching lines...) Expand 10 before | Expand all | Expand 10 after
273 273
274 #if defined(ENABLE_WEBRTC) 274 #if defined(ENABLE_WEBRTC)
275 #include "chrome/browser/media/webrtc_logging_handler_host.h" 275 #include "chrome/browser/media/webrtc_logging_handler_host.h"
276 #endif 276 #endif
277 277
278 #if defined(ENABLE_MEDIA_ROUTER) 278 #if defined(ENABLE_MEDIA_ROUTER)
279 #include "chrome/browser/media/router/media_router_feature.h" 279 #include "chrome/browser/media/router/media_router_feature.h"
280 #include "chrome/browser/media/router/presentation_service_delegate_impl.h" 280 #include "chrome/browser/media/router/presentation_service_delegate_impl.h"
281 #endif 281 #endif
282 282
283 #if !defined(OS_ANDROID) && !defined(OS_IOS)
284 #include "components/webusb/public/interfaces/webusb_permission_bubble.mojom.h"
285 #endif
286
283 #if defined(ENABLE_WAYLAND_SERVER) 287 #if defined(ENABLE_WAYLAND_SERVER)
284 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h" 288 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h"
285 #endif 289 #endif
286 290
287 using base::FileDescriptor; 291 using base::FileDescriptor;
288 using blink::WebWindowFeatures; 292 using blink::WebWindowFeatures;
289 using content::AccessTokenStore; 293 using content::AccessTokenStore;
290 using content::BrowserThread; 294 using content::BrowserThread;
291 using content::BrowserURLHandler; 295 using content::BrowserURLHandler;
292 using content::ChildProcessSecurityPolicy; 296 using content::ChildProcessSecurityPolicy;
(...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after
652 if (!web_contents) { 656 if (!web_contents) {
653 NOTREACHED(); 657 NOTREACHED();
654 return; 658 return;
655 } 659 }
656 660
657 UsbTabHelper* tab_helper = 661 UsbTabHelper* tab_helper =
658 UsbTabHelper::GetOrCreateForWebContents(web_contents); 662 UsbTabHelper::GetOrCreateForWebContents(web_contents);
659 tab_helper->CreateDeviceManager(render_frame_host, request.Pass()); 663 tab_helper->CreateDeviceManager(render_frame_host, request.Pass());
660 } 664 }
661 665
666 #if !defined(OS_ANDROID) && !defined(OS_IOS)
667 void CreateWebUsbPermissionBubble(
668 RenderFrameHost* render_frame_host,
669 mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request) {
670 WebContents* web_contents =
671 WebContents::FromRenderFrameHost(render_frame_host);
672 if (!web_contents) {
673 NOTREACHED();
674 return;
675 }
676
677 UsbTabHelper* tab_helper =
678 UsbTabHelper::GetOrCreateForWebContents(web_contents);
679 tab_helper->CreatePermissionBubble(render_frame_host, request.Pass());
680 }
681 #endif // !defined(OS_ANDROID) && !defined(OS_IOS)
682
662 } // namespace 683 } // namespace
663 684
664 ChromeContentBrowserClient::ChromeContentBrowserClient() 685 ChromeContentBrowserClient::ChromeContentBrowserClient()
665 : 686 :
666 weak_factory_(this) { 687 weak_factory_(this) {
667 #if defined(ENABLE_PLUGINS) 688 #if defined(ENABLE_PLUGINS)
668 for (size_t i = 0; i < arraysize(kPredefinedAllowedDevChannelOrigins); ++i) 689 for (size_t i = 0; i < arraysize(kPredefinedAllowedDevChannelOrigins); ++i)
669 allowed_dev_channel_origins_.insert(kPredefinedAllowedDevChannelOrigins[i]); 690 allowed_dev_channel_origins_.insert(kPredefinedAllowedDevChannelOrigins[i]);
670 for (size_t i = 0; i < arraysize(kPredefinedAllowedFileHandleOrigins); ++i) 691 for (size_t i = 0; i < arraysize(kPredefinedAllowedFileHandleOrigins); ++i)
671 allowed_file_handle_origins_.insert(kPredefinedAllowedFileHandleOrigins[i]); 692 allowed_file_handle_origins_.insert(kPredefinedAllowedFileHandleOrigins[i]);
(...skipping 1935 matching lines...) Expand 10 before | Expand all | Expand 10 after
2607 registry->AddService( 2628 registry->AddService(
2608 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create, 2629 base::Bind(&chromeos::attestation::PlatformVerificationImpl::Create,
2609 render_frame_host)); 2630 render_frame_host));
2610 #endif 2631 #endif
2611 } 2632 }
2612 2633
2613 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices( 2634 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices(
2614 content::ServiceRegistry* registry, 2635 content::ServiceRegistry* registry,
2615 content::RenderFrameHost* render_frame_host) { 2636 content::RenderFrameHost* render_frame_host) {
2616 registry->AddService(base::Bind(&CreateUsbDeviceManager, render_frame_host)); 2637 registry->AddService(base::Bind(&CreateUsbDeviceManager, render_frame_host));
2638 #if !defined(OS_ANDROID) && !defined(OS_IOS)
2639 registry->AddService(
2640 base::Bind(&CreateWebUsbPermissionBubble, render_frame_host));
2641 #endif // !defined(OS_ANDROID) && !defined(OS_IOS)
2617 } 2642 }
2618 2643
2619 void ChromeContentBrowserClient::RegisterOutOfProcessMojoApplications( 2644 void ChromeContentBrowserClient::RegisterOutOfProcessMojoApplications(
2620 OutOfProcessMojoApplicationMap* apps) { 2645 OutOfProcessMojoApplicationMap* apps) {
2621 #if defined(ENABLE_MOJO_MEDIA_IN_UTILITY_PROCESS) 2646 #if defined(ENABLE_MOJO_MEDIA_IN_UTILITY_PROCESS)
2622 apps->insert(std::make_pair(GURL("mojo:media"), 2647 apps->insert(std::make_pair(GURL("mojo:media"),
2623 base::ASCIIToUTF16("Media App"))); 2648 base::ASCIIToUTF16("Media App")));
2624 #endif 2649 #endif
2625 } 2650 }
2626 2651
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
2783 if (channel <= kMaxDisableEncryptionChannel) { 2808 if (channel <= kMaxDisableEncryptionChannel) {
2784 static const char* const kWebRtcDevSwitchNames[] = { 2809 static const char* const kWebRtcDevSwitchNames[] = {
2785 switches::kDisableWebRtcEncryption, 2810 switches::kDisableWebRtcEncryption,
2786 }; 2811 };
2787 to_command_line->CopySwitchesFrom(from_command_line, 2812 to_command_line->CopySwitchesFrom(from_command_line,
2788 kWebRtcDevSwitchNames, 2813 kWebRtcDevSwitchNames,
2789 arraysize(kWebRtcDevSwitchNames)); 2814 arraysize(kWebRtcDevSwitchNames));
2790 } 2815 }
2791 } 2816 }
2792 #endif // defined(ENABLE_WEBRTC) 2817 #endif // defined(ENABLE_WEBRTC)
OLDNEW
« no previous file with comments | « chrome/app/generated_resources.grd ('k') | chrome/browser/ui/chrome_bubble_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698