| Index: extensions/browser/api/device_permissions_manager.h
|
| diff --git a/extensions/browser/api/device_permissions_manager.h b/extensions/browser/api/device_permissions_manager.h
|
| index d76426c5a4dada983cfdacacb6042870a80cb7c9..159cd7b3244b90d1cb9ea819374ea7f6c98140f2 100644
|
| --- a/extensions/browser/api/device_permissions_manager.h
|
| +++ b/extensions/browser/api/device_permissions_manager.h
|
| @@ -18,6 +18,7 @@
|
| #include "base/threading/thread_checker.h"
|
| #include "components/keyed_service/content/browser_context_keyed_service_factory.h"
|
| #include "components/keyed_service/core/keyed_service.h"
|
| +#include "content/public/browser/browser_thread.h"
|
| #include "device/usb/usb_service.h"
|
| #include "extensions/browser/process_manager.h"
|
| #include "extensions/browser/process_manager_observer.h"
|
| @@ -134,8 +135,7 @@ class DevicePermissions {
|
| // Manages saved device permissions for all extensions.
|
| class DevicePermissionsManager : public KeyedService,
|
| public base::NonThreadSafe,
|
| - public ProcessManagerObserver,
|
| - public device::UsbService::Observer {
|
| + public ProcessManagerObserver {
|
| public:
|
| static DevicePermissionsManager* Get(content::BrowserContext* context);
|
|
|
| @@ -171,6 +171,8 @@ class DevicePermissionsManager : public KeyedService,
|
| void Clear(const std::string& extension_id);
|
|
|
| private:
|
| + class FileThreadHelper;
|
| +
|
| friend class DevicePermissionsManagerFactory;
|
| FRIEND_TEST_ALL_PREFIXES(DevicePermissionsManagerTest, SuspendExtension);
|
|
|
| @@ -179,19 +181,18 @@ class DevicePermissionsManager : public KeyedService,
|
|
|
| DevicePermissions* Get(const std::string& extension_id) const;
|
| DevicePermissions* GetOrInsert(const std::string& extension_id);
|
| + void OnDeviceRemoved(scoped_refptr<device::UsbDevice> device);
|
|
|
| // ProcessManagerObserver implementation
|
| void OnBackgroundHostClose(const std::string& extension_id) override;
|
|
|
| - // device::UsbService::Observer implementation
|
| - void OnDeviceRemoved(scoped_refptr<device::UsbDevice> device) override;
|
| -
|
| content::BrowserContext* context_;
|
| std::map<std::string, DevicePermissions*> extension_id_to_device_permissions_;
|
| ScopedObserver<ProcessManager, ProcessManagerObserver>
|
| process_manager_observer_;
|
| - ScopedObserver<device::UsbService, device::UsbService::Observer>
|
| - usb_service_observer_;
|
| + FileThreadHelper* helper_;
|
| +
|
| + base::WeakPtrFactory<DevicePermissionsManager> weak_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(DevicePermissionsManager);
|
| };
|
|
|