Rename web_usb_permission_bubble.cc/h and webusb_permission_bubble.mojom
This patch renamed the following three files: web_usb_permission_bubble.cc/h -> web_usb_chooser_service.cc/h //components/webusb/public/interfaces/webusb_permission_bubble.mojom -> //device/usb/public/interfaces/chooser_service.mojom The previous filenames are misleading and confusing, since the word "bubble" in the original filename is a Chrome UI concept, but these files are not UI related. The new filenames better reflect the responsibilities and roles of these files. By moving //components/webusb/public/interfaces/webusb_permission_bubble.mojom to //device/usb/public/interfaces/chooser_service.mojom, it removes the //components dependency of: //content/renderer/usb/DEPS, the depencency breaks the DEP rule at: //content/renderer/DEPS This patch is a follow-up patch for: https://codereview.chromium.org/1624573004/ The above patch is closed. BUG=492204, 590268 Review URL: https://codereview.chromium.org/1742753002 Cr-Commit-Position: refs/heads/master@{#381004}
This commit is contained in:
chrome
components
content
device/usb
@ -294,7 +294,7 @@
|
||||
#endif
|
||||
|
||||
#if !defined(OS_ANDROID)
|
||||
#include "components/webusb/public/interfaces/webusb_permission_bubble.mojom.h"
|
||||
#include "device/usb/public/interfaces/chooser_service.mojom.h"
|
||||
#endif
|
||||
|
||||
#if defined(ENABLE_WAYLAND_SERVER)
|
||||
@ -690,9 +690,9 @@ void CreateUsbDeviceManager(
|
||||
}
|
||||
|
||||
#if !defined(OS_ANDROID)
|
||||
void CreateWebUsbPermissionBubble(
|
||||
void CreateWebUsbChooserService(
|
||||
RenderFrameHost* render_frame_host,
|
||||
mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request) {
|
||||
mojo::InterfaceRequest<device::usb::ChooserService> request) {
|
||||
WebContents* web_contents =
|
||||
WebContents::FromRenderFrameHost(render_frame_host);
|
||||
if (!web_contents) {
|
||||
@ -702,7 +702,7 @@ void CreateWebUsbPermissionBubble(
|
||||
|
||||
UsbTabHelper* tab_helper =
|
||||
UsbTabHelper::GetOrCreateForWebContents(web_contents);
|
||||
tab_helper->CreatePermissionBubble(render_frame_host, std::move(request));
|
||||
tab_helper->CreateChooserService(render_frame_host, std::move(request));
|
||||
}
|
||||
#endif // !defined(OS_ANDROID)
|
||||
|
||||
@ -2793,7 +2793,7 @@ void ChromeContentBrowserClient::RegisterRenderFrameMojoServices(
|
||||
registry->AddService(base::Bind(&CreateUsbDeviceManager, render_frame_host));
|
||||
#if !defined(OS_ANDROID)
|
||||
registry->AddService(
|
||||
base::Bind(&CreateWebUsbPermissionBubble, render_frame_host));
|
||||
base::Bind(&CreateWebUsbChooserService, render_frame_host));
|
||||
#endif // !defined(OS_ANDROID)
|
||||
}
|
||||
|
||||
|
@ -77,7 +77,7 @@ UsbChooserBubbleController::UsbChooserBubbleController(
|
||||
content::RenderFrameHost* owner,
|
||||
mojo::Array<device::usb::DeviceFilterPtr> device_filters,
|
||||
content::RenderFrameHost* render_frame_host,
|
||||
const webusb::WebUsbPermissionBubble::GetPermissionCallback& callback)
|
||||
const device::usb::ChooserService::GetPermissionCallback& callback)
|
||||
: ChooserBubbleController(owner),
|
||||
render_frame_host_(render_frame_host),
|
||||
callback_(callback),
|
||||
|
@ -13,7 +13,7 @@
|
||||
#include "base/scoped_observer.h"
|
||||
#include "chrome/browser/ui/website_settings/chooser_bubble_controller.h"
|
||||
#include "components/bubble/bubble_reference.h"
|
||||
#include "components/webusb/public/interfaces/webusb_permission_bubble.mojom.h"
|
||||
#include "device/usb/public/interfaces/chooser_service.mojom.h"
|
||||
#include "device/usb/usb_service.h"
|
||||
#include "mojo/public/cpp/bindings/array.h"
|
||||
|
||||
@ -34,7 +34,7 @@ class UsbChooserBubbleController : public ChooserBubbleController,
|
||||
content::RenderFrameHost* owner,
|
||||
mojo::Array<device::usb::DeviceFilterPtr> device_filters,
|
||||
content::RenderFrameHost* render_frame_host,
|
||||
const webusb::WebUsbPermissionBubble::GetPermissionCallback& callback);
|
||||
const device::usb::ChooserService::GetPermissionCallback& callback);
|
||||
~UsbChooserBubbleController() override;
|
||||
|
||||
// ChooserBubbleController:
|
||||
@ -56,7 +56,7 @@ class UsbChooserBubbleController : public ChooserBubbleController,
|
||||
|
||||
private:
|
||||
content::RenderFrameHost* const render_frame_host_;
|
||||
webusb::WebUsbPermissionBubble::GetPermissionCallback callback_;
|
||||
device::usb::ChooserService::GetPermissionCallback callback_;
|
||||
ScopedObserver<device::UsbService, device::UsbService::Observer>
|
||||
usb_service_observer_;
|
||||
std::vector<device::UsbDeviceFilter> filters_;
|
||||
|
@ -7,7 +7,7 @@
|
||||
#include <utility>
|
||||
|
||||
#include "base/memory/scoped_ptr.h"
|
||||
#include "chrome/browser/usb/web_usb_permission_bubble.h"
|
||||
#include "chrome/browser/usb/web_usb_chooser_service.h"
|
||||
#include "chrome/browser/usb/web_usb_permission_provider.h"
|
||||
#include "device/usb/mojo/device_manager_impl.h"
|
||||
|
||||
@ -18,7 +18,7 @@ DEFINE_WEB_CONTENTS_USER_DATA_KEY(UsbTabHelper);
|
||||
|
||||
struct FrameUsbServices {
|
||||
scoped_ptr<WebUSBPermissionProvider> permission_provider;
|
||||
scoped_ptr<ChromeWebUsbPermissionBubble> permission_bubble;
|
||||
scoped_ptr<WebUsbChooserService> chooser_service;
|
||||
};
|
||||
|
||||
// static
|
||||
@ -43,10 +43,10 @@ void UsbTabHelper::CreateDeviceManager(
|
||||
}
|
||||
|
||||
#if !defined(OS_ANDROID)
|
||||
void UsbTabHelper::CreatePermissionBubble(
|
||||
void UsbTabHelper::CreateChooserService(
|
||||
content::RenderFrameHost* render_frame_host,
|
||||
mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request) {
|
||||
GetPermissionBubble(render_frame_host, std::move(request));
|
||||
mojo::InterfaceRequest<device::usb::ChooserService> request) {
|
||||
GetChooserService(render_frame_host, std::move(request));
|
||||
}
|
||||
#endif // !defined(OS_ANDROID)
|
||||
|
||||
@ -81,14 +81,14 @@ UsbTabHelper::GetPermissionProvider(RenderFrameHost* render_frame_host) {
|
||||
}
|
||||
|
||||
#if !defined(OS_ANDROID)
|
||||
void UsbTabHelper::GetPermissionBubble(
|
||||
void UsbTabHelper::GetChooserService(
|
||||
content::RenderFrameHost* render_frame_host,
|
||||
mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request) {
|
||||
mojo::InterfaceRequest<device::usb::ChooserService> request) {
|
||||
FrameUsbServices* frame_usb_services = GetFrameUsbService(render_frame_host);
|
||||
if (!frame_usb_services->permission_bubble) {
|
||||
frame_usb_services->permission_bubble.reset(
|
||||
new ChromeWebUsbPermissionBubble(render_frame_host));
|
||||
if (!frame_usb_services->chooser_service) {
|
||||
frame_usb_services->chooser_service.reset(
|
||||
new WebUsbChooserService(render_frame_host));
|
||||
}
|
||||
frame_usb_services->permission_bubble->Bind(std::move(request));
|
||||
frame_usb_services->chooser_service->Bind(std::move(request));
|
||||
}
|
||||
#endif // !defined(OS_ANDROID)
|
||||
|
@ -14,15 +14,12 @@
|
||||
|
||||
namespace device {
|
||||
namespace usb {
|
||||
class ChooserService;
|
||||
class DeviceManager;
|
||||
class PermissionProvider;
|
||||
}
|
||||
}
|
||||
|
||||
namespace webusb {
|
||||
class WebUsbPermissionBubble;
|
||||
}
|
||||
|
||||
struct FrameUsbServices;
|
||||
|
||||
typedef std::map<content::RenderFrameHost*, scoped_ptr<FrameUsbServices>>
|
||||
@ -42,9 +39,9 @@ class UsbTabHelper : public content::WebContentsObserver,
|
||||
mojo::InterfaceRequest<device::usb::DeviceManager> request);
|
||||
|
||||
#if !defined(OS_ANDROID)
|
||||
void CreatePermissionBubble(
|
||||
void CreateChooserService(
|
||||
content::RenderFrameHost* render_frame_host,
|
||||
mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request);
|
||||
mojo::InterfaceRequest<device::usb::ChooserService> request);
|
||||
#endif // !defined(OS_ANDROID)
|
||||
|
||||
private:
|
||||
@ -61,9 +58,9 @@ class UsbTabHelper : public content::WebContentsObserver,
|
||||
content::RenderFrameHost* render_frame_host);
|
||||
|
||||
#if !defined(OS_ANDROID)
|
||||
void GetPermissionBubble(
|
||||
void GetChooserService(
|
||||
content::RenderFrameHost* render_frame_host,
|
||||
mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request);
|
||||
mojo::InterfaceRequest<device::usb::ChooserService> request);
|
||||
#endif // !defined(OS_ANDROID)
|
||||
|
||||
FrameUsbServicesMap frame_usb_services_;
|
||||
|
@ -2,7 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
#include "chrome/browser/usb/web_usb_permission_bubble.h"
|
||||
#include "chrome/browser/usb/web_usb_chooser_service.h"
|
||||
|
||||
#include <utility>
|
||||
|
||||
@ -13,21 +13,21 @@
|
||||
#include "content/public/browser/browser_thread.h"
|
||||
#include "content/public/browser/render_frame_host.h"
|
||||
|
||||
ChromeWebUsbPermissionBubble::ChromeWebUsbPermissionBubble(
|
||||
WebUsbChooserService::WebUsbChooserService(
|
||||
content::RenderFrameHost* render_frame_host)
|
||||
: render_frame_host_(render_frame_host) {
|
||||
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
|
||||
DCHECK(render_frame_host);
|
||||
}
|
||||
|
||||
ChromeWebUsbPermissionBubble::~ChromeWebUsbPermissionBubble() {
|
||||
WebUsbChooserService::~WebUsbChooserService() {
|
||||
for (const auto& bubble : bubbles_) {
|
||||
if (bubble)
|
||||
bubble->CloseBubble(BUBBLE_CLOSE_FORCED);
|
||||
}
|
||||
}
|
||||
|
||||
void ChromeWebUsbPermissionBubble::GetPermission(
|
||||
void WebUsbChooserService::GetPermission(
|
||||
mojo::Array<device::usb::DeviceFilterPtr> device_filters,
|
||||
const GetPermissionCallback& callback) {
|
||||
content::WebContents* web_contents =
|
||||
@ -44,8 +44,8 @@ void ChromeWebUsbPermissionBubble::GetPermission(
|
||||
bubbles_.push_back(bubble_reference);
|
||||
}
|
||||
|
||||
void ChromeWebUsbPermissionBubble::Bind(
|
||||
mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request) {
|
||||
void WebUsbChooserService::Bind(
|
||||
mojo::InterfaceRequest<device::usb::ChooserService> request) {
|
||||
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
|
||||
bindings_.AddBinding(this, std::move(request));
|
||||
}
|
@ -2,14 +2,14 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
#ifndef CHROME_BROWSER_USB_WEB_USB_PERMISSION_BUBBLE_H_
|
||||
#define CHROME_BROWSER_USB_WEB_USB_PERMISSION_BUBBLE_H_
|
||||
#ifndef CHROME_BROWSER_USB_WEB_USB_CHOOSER_SERVICE_H_
|
||||
#define CHROME_BROWSER_USB_WEB_USB_CHOOSER_SERVICE_H_
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include "base/macros.h"
|
||||
#include "components/bubble/bubble_reference.h"
|
||||
#include "components/webusb/public/interfaces/webusb_permission_bubble.mojom.h"
|
||||
#include "device/usb/public/interfaces/chooser_service.mojom.h"
|
||||
#include "mojo/public/cpp/bindings/array.h"
|
||||
#include "mojo/public/cpp/bindings/binding_set.h"
|
||||
#include "mojo/public/cpp/bindings/interface_request.h"
|
||||
@ -22,27 +22,27 @@ namespace device {
|
||||
class UsbDevice;
|
||||
}
|
||||
|
||||
// Implementation of the public webusb::WebUsbPermissionBubble interface.
|
||||
// Implementation of the public device::usb::ChooserService interface.
|
||||
// This interface can be used by a webpage to request permission from user
|
||||
// to access a certain device.
|
||||
class ChromeWebUsbPermissionBubble : public webusb::WebUsbPermissionBubble {
|
||||
class WebUsbChooserService : public device::usb::ChooserService {
|
||||
public:
|
||||
explicit ChromeWebUsbPermissionBubble(
|
||||
content::RenderFrameHost* render_frame_host);
|
||||
explicit WebUsbChooserService(content::RenderFrameHost* render_frame_host);
|
||||
|
||||
~ChromeWebUsbPermissionBubble() override;
|
||||
~WebUsbChooserService() override;
|
||||
|
||||
// webusb::WebUsbPermissionBubble:
|
||||
// device::usb::ChooserService:
|
||||
void GetPermission(mojo::Array<device::usb::DeviceFilterPtr> device_filters,
|
||||
const GetPermissionCallback& callback) override;
|
||||
void Bind(mojo::InterfaceRequest<webusb::WebUsbPermissionBubble> request);
|
||||
|
||||
void Bind(mojo::InterfaceRequest<device::usb::ChooserService> request);
|
||||
|
||||
private:
|
||||
content::RenderFrameHost* const render_frame_host_;
|
||||
mojo::BindingSet<webusb::WebUsbPermissionBubble> bindings_;
|
||||
mojo::BindingSet<device::usb::ChooserService> bindings_;
|
||||
std::vector<BubbleReference> bubbles_;
|
||||
|
||||
DISALLOW_COPY_AND_ASSIGN(ChromeWebUsbPermissionBubble);
|
||||
DISALLOW_COPY_AND_ASSIGN(WebUsbChooserService);
|
||||
};
|
||||
|
||||
#endif // CHROME_BROWSER_USB_WEB_USB_PERMISSION_BUBBLE_H_
|
||||
#endif // CHROME_BROWSER_USB_WEB_USB_CHOOSER_SERVICE_H_
|
@ -1382,8 +1382,8 @@
|
||||
'browser/upgrade_detector.h',
|
||||
'browser/usb/usb_chooser_bubble_controller.cc',
|
||||
'browser/usb/usb_chooser_bubble_controller.h',
|
||||
'browser/usb/web_usb_permission_bubble.cc',
|
||||
'browser/usb/web_usb_permission_bubble.h',
|
||||
'browser/usb/web_usb_chooser_service.cc',
|
||||
'browser/usb/web_usb_chooser_service.h',
|
||||
],
|
||||
'chrome_browser_win_sources': [
|
||||
'browser/first_run/try_chrome_dialog_view.cc',
|
||||
|
@ -11,7 +11,6 @@
|
||||
'../base/base.gyp:base',
|
||||
'../device/core/core.gyp:device_core',
|
||||
'../device/usb/usb.gyp:device_usb',
|
||||
'components_webusb_mojo_bindings',
|
||||
],
|
||||
'include_dirs': [
|
||||
'..',
|
||||
@ -22,18 +21,5 @@
|
||||
'webusb/webusb_detector.h',
|
||||
],
|
||||
},
|
||||
{
|
||||
'target_name': 'components_webusb_mojo_bindings',
|
||||
'type': 'static_library',
|
||||
'dependencies': [
|
||||
'../device/usb/usb.gyp:device_usb_mojo_bindings',
|
||||
],
|
||||
'sources': [
|
||||
'webusb/public/interfaces/webusb_permission_bubble.mojom',
|
||||
],
|
||||
'includes': [
|
||||
'../mojo/mojom_bindings_generator.gypi',
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
||||
|
@ -11,7 +11,6 @@ source_set("webusb") {
|
||||
|
||||
public_deps = [
|
||||
"//base",
|
||||
"//components/webusb/public/interfaces",
|
||||
"//device/usb",
|
||||
]
|
||||
deps = [
|
||||
|
@ -1,15 +0,0 @@
|
||||
# Copyright 2015 The Chromium Authors. All rights reserved.
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
# found in the LICENSE file.
|
||||
|
||||
import("//mojo/public/tools/bindings/mojom.gni")
|
||||
|
||||
mojom("interfaces") {
|
||||
sources = [
|
||||
"webusb_permission_bubble.mojom",
|
||||
]
|
||||
|
||||
deps = [
|
||||
"//device/usb/public/interfaces",
|
||||
]
|
||||
}
|
@ -42,6 +42,7 @@ if (is_win) {
|
||||
content_app_sources -= [ "content_main.cc" ]
|
||||
content_app_deps += [
|
||||
"//content/public/android:jni",
|
||||
"//device/usb",
|
||||
"//device/vibration",
|
||||
"//skia",
|
||||
"//third_party/android_tools:cpu_features",
|
||||
|
@ -50,6 +50,7 @@
|
||||
'dependencies': [
|
||||
'content.gyp:content_jni_headers',
|
||||
'../build/android/ndk.gyp:cpu_features',
|
||||
'../device/usb/usb.gyp:device_usb',
|
||||
'../gpu/gpu.gyp:gpu_ipc_common',
|
||||
'../skia/skia.gyp:skia',
|
||||
'../ui/android/ui_android.gyp:ui_android',
|
||||
|
@ -9,7 +9,6 @@
|
||||
'../cc/cc.gyp:cc',
|
||||
'../cc/cc.gyp:cc_proto',
|
||||
'../cc/blink/cc_blink.gyp:cc_blink',
|
||||
'../components/components.gyp:webusb',
|
||||
'../components/scheduler/scheduler.gyp:scheduler',
|
||||
'../components/url_formatter/url_formatter.gyp:url_formatter',
|
||||
'../device/battery/battery.gyp:device_battery',
|
||||
|
@ -32,7 +32,6 @@ source_set("renderer") {
|
||||
"//cc/surfaces:surface_id",
|
||||
"//components/scheduler:scheduler",
|
||||
"//components/url_formatter",
|
||||
"//components/webusb",
|
||||
"//content:resources",
|
||||
"//content/common:mojo_bindings",
|
||||
"//content/public/child:child_sources",
|
||||
|
@ -1,4 +1,3 @@
|
||||
include_rules = [
|
||||
"+components/webusb/public/interfaces",
|
||||
"+device/usb/public",
|
||||
]
|
||||
|
@ -107,9 +107,9 @@ void WebUSBClientImpl::getDevices(
|
||||
void WebUSBClientImpl::requestDevice(
|
||||
const blink::WebUSBDeviceRequestOptions& options,
|
||||
blink::WebUSBClientRequestDeviceCallbacks* callbacks) {
|
||||
if (!webusb_permission_bubble_) {
|
||||
if (!chooser_service_) {
|
||||
service_registry_->ConnectToRemoteService(
|
||||
mojo::GetProxy(&webusb_permission_bubble_));
|
||||
mojo::GetProxy(&chooser_service_));
|
||||
}
|
||||
|
||||
auto scoped_callbacks = MakeScopedUSBCallbacks(callbacks);
|
||||
@ -117,7 +117,7 @@ void WebUSBClientImpl::requestDevice(
|
||||
mojo::Array<device::usb::DeviceFilterPtr> device_filters =
|
||||
mojo::Array<device::usb::DeviceFilterPtr>::From(options.filters);
|
||||
|
||||
webusb_permission_bubble_->GetPermission(
|
||||
chooser_service_->GetPermission(
|
||||
std::move(device_filters),
|
||||
base::Bind(&OnRequestDevicesComplete, base::Passed(&scoped_callbacks),
|
||||
base::Unretained(device_manager_.get())));
|
||||
|
@ -6,7 +6,7 @@
|
||||
#define CONTENT_RENDERER_USB_WEB_USB_CLIENT_IMPL_H_
|
||||
|
||||
#include "base/macros.h"
|
||||
#include "components/webusb/public/interfaces/webusb_permission_bubble.mojom.h"
|
||||
#include "device/usb/public/interfaces/chooser_service.mojom.h"
|
||||
#include "device/usb/public/interfaces/device_manager.mojom.h"
|
||||
#include "third_party/WebKit/public/platform/modules/webusb/WebUSBClient.h"
|
||||
|
||||
@ -33,7 +33,7 @@ class WebUSBClientImpl : public blink::WebUSBClient {
|
||||
|
||||
ServiceRegistry* const service_registry_;
|
||||
device::usb::DeviceManagerPtr device_manager_;
|
||||
webusb::WebUsbPermissionBubblePtr webusb_permission_bubble_;
|
||||
device::usb::ChooserServicePtr chooser_service_;
|
||||
Observer* observer_ = nullptr;
|
||||
|
||||
DISALLOW_COPY_AND_ASSIGN(WebUSBClientImpl);
|
||||
|
@ -6,6 +6,7 @@ import("//mojo/public/tools/bindings/mojom.gni")
|
||||
|
||||
mojom("interfaces") {
|
||||
sources = [
|
||||
"chooser_service.mojom",
|
||||
"device.mojom",
|
||||
"device_manager.mojom",
|
||||
]
|
||||
|
@ -2,12 +2,12 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
module webusb;
|
||||
module device.usb;
|
||||
|
||||
import "device/usb/public/interfaces/device.mojom";
|
||||
import "device/usb/public/interfaces/device_manager.mojom";
|
||||
import "device.mojom";
|
||||
import "device_manager.mojom";
|
||||
|
||||
interface WebUsbPermissionBubble {
|
||||
interface ChooserService {
|
||||
// Get permission from user to use the device.
|
||||
//
|
||||
// |device_filters| filters the available devices and the filtered
|
@ -128,6 +128,7 @@
|
||||
'target_name': 'device_usb_mojo_bindings',
|
||||
'type': 'static_library',
|
||||
'sources': [
|
||||
'public/interfaces/chooser_service.mojom',
|
||||
'public/interfaces/device.mojom',
|
||||
'public/interfaces/device_manager.mojom',
|
||||
],
|
||||
|
Reference in New Issue
Block a user