| Index: chrome/browser/chrome_content_browser_client.cc
|
| diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
|
| index a1bf4a784eec0232bc7dfcf4ae7ab37836698bd2..3dbfe26e8232c4ee721a97a932ea352d6956928f 100644
|
| --- a/chrome/browser/chrome_content_browser_client.cc
|
| +++ b/chrome/browser/chrome_content_browser_client.cc
|
| @@ -274,6 +274,10 @@
|
| #include "chrome/browser/media/router/presentation_service_delegate_impl.h"
|
| #endif
|
|
|
| +#if !defined(OS_ANDROID) && !defined(OS_IOS)
|
| +#include "components/webusb/public/interfaces/webusb_permission_bubble.mojom.h"
|
| +#endif
|
| +
|
| using base::FileDescriptor;
|
| using blink::WebWindowFeatures;
|
| using content::AccessTokenStore;
|
| @@ -649,6 +653,23 @@ void CreateUsbDeviceManager(
|
| #endif // !defined(OS_ANDROID) && !defined(OS_IOS)
|
| }
|
|
|
| +#if !defined(OS_ANDROID) && !defined(OS_IOS)
|
| +void CreateWebUsbPermissionBubble(
|
| + RenderFrameHost* render_frame_host,
|
| + mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request) {
|
| + WebContents* web_contents =
|
| + WebContents::FromRenderFrameHost(render_frame_host);
|
| + if (!web_contents) {
|
| + NOTREACHED();
|
| + return;
|
| + }
|
| +
|
| + UsbTabHelper* tab_helper =
|
| + UsbTabHelper::GetOrCreateForWebContents(web_contents);
|
| + tab_helper->CreatePermissionBubble(render_frame_host, request.Pass());
|
| +}
|
| +#endif // !defined(OS_ANDROID) && !defined(OS_IOS)
|
| +
|
| } // namespace
|
|
|
| ChromeContentBrowserClient::ChromeContentBrowserClient()
|
| @@ -2594,6 +2615,10 @@ void ChromeContentBrowserClient::RegisterRenderFrameMojoServices(
|
| content::ServiceRegistry* registry,
|
| content::RenderFrameHost* render_frame_host) {
|
| registry->AddService(base::Bind(&CreateUsbDeviceManager, render_frame_host));
|
| +#if !defined(OS_ANDROID) && !defined(OS_IOS)
|
| + registry->AddService(
|
| + base::Bind(&CreateWebUsbPermissionBubble, render_frame_host));
|
| +#endif // !defined(OS_ANDROID) && !defined(OS_IOS)
|
| }
|
|
|
| void ChromeContentBrowserClient::RegisterOutOfProcessMojoApplications(
|
|
|