| 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 2cd5a26b279a96d2ec0f33437e1d2d3e2143e551..3630785011c55abc5e7bf5084f47135592096629 100644
|
| --- a/chrome/browser/chrome_content_browser_client.cc
|
| +++ b/chrome/browser/chrome_content_browser_client.cc
|
| @@ -275,6 +275,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;
|
| @@ -652,6 +656,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()
|
| @@ -2598,6 +2619,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(
|
|
|