OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 #ifndef CONTENT_RENDERER_USB_WEB_USB_CLIENT_IMPL_H_ | 5 #ifndef CONTENT_RENDERER_USB_WEB_USB_CLIENT_IMPL_H_ |
6 #define CONTENT_RENDERER_USB_WEB_USB_CLIENT_IMPL_H_ | 6 #define CONTENT_RENDERER_USB_WEB_USB_CLIENT_IMPL_H_ |
7 | 7 |
| 8 #include "base/id_map.h" |
8 #include "base/macros.h" | 9 #include "base/macros.h" |
9 #include "device/devices_app/usb/public/interfaces/device_manager.mojom.h" | 10 #include "device/devices_app/usb/public/interfaces/device_manager.mojom.h" |
| 11 #include "mojo/application/public/interfaces/service_provider.mojom.h" |
10 #include "third_party/WebKit/public/platform/modules/webusb/WebUSBClient.h" | 12 #include "third_party/WebKit/public/platform/modules/webusb/WebUSBClient.h" |
11 | 13 |
12 namespace content { | 14 namespace content { |
13 | 15 |
14 class ServiceRegistry; | |
15 | |
16 class WebUSBClientImpl : public blink::WebUSBClient { | 16 class WebUSBClientImpl : public blink::WebUSBClient { |
17 public: | 17 public: |
18 explicit WebUSBClientImpl(content::ServiceRegistry* service_registry); | 18 explicit WebUSBClientImpl(mojo::ServiceProviderPtr device_services); |
19 ~WebUSBClientImpl() override; | 19 ~WebUSBClientImpl() override; |
20 | 20 |
21 private: | 21 private: |
22 // blink::WebUSBClient implementation: | 22 // blink::WebUSBClient implementation: |
23 void getDevices(blink::WebUSBClientGetDevicesCallbacks* callbacks) override; | 23 void getDevices(blink::WebUSBClientGetDevicesCallbacks* callbacks) override; |
24 void requestDevice( | 24 void requestDevice( |
25 const blink::WebUSBDeviceRequestOptions& options, | 25 const blink::WebUSBDeviceRequestOptions& options, |
26 blink::WebUSBClientRequestDeviceCallbacks* callbacks) override; | 26 blink::WebUSBClientRequestDeviceCallbacks* callbacks) override; |
27 void setObserver(Observer* observer) override; | 27 void setObserver(Observer* observer) override; |
28 | 28 |
29 void OnDeviceChangeNotification( | 29 void OnDeviceChangeNotification( |
30 device::usb::DeviceChangeNotificationPtr notification); | 30 device::usb::DeviceChangeNotificationPtr notification); |
31 | 31 |
| 32 mojo::ServiceProviderPtr device_services_; |
32 device::usb::DeviceManagerPtr device_manager_; | 33 device::usb::DeviceManagerPtr device_manager_; |
33 Observer* observer_ = nullptr; | 34 Observer* observer_ = nullptr; |
34 | 35 |
35 DISALLOW_COPY_AND_ASSIGN(WebUSBClientImpl); | 36 DISALLOW_COPY_AND_ASSIGN(WebUSBClientImpl); |
36 }; | 37 }; |
37 | 38 |
38 } // namespace content | 39 } // namespace content |
39 | 40 |
40 #endif // CONTENT_RENDERER_USB_WEB_USB_CLIENT_IMPL_H_ | 41 #endif // CONTENT_RENDERER_USB_WEB_USB_CLIENT_IMPL_H_ |
OLD | NEW |