summaryrefslogtreecommitdiff
path: root/chromium/content/public/browser/hid_delegate.h
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-12 14:27:29 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-13 09:35:20 +0000
commitc30a6232df03e1efbd9f3b226777b07e087a1122 (patch)
treee992f45784689f373bcc38d1b79a239ebe17ee23 /chromium/content/public/browser/hid_delegate.h
parent7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (diff)
downloadqtwebengine-chromium-85-based.tar.gz
BASELINE: Update Chromium to 85.0.4183.14085-based
Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/content/public/browser/hid_delegate.h')
-rw-r--r--chromium/content/public/browser/hid_delegate.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/chromium/content/public/browser/hid_delegate.h b/chromium/content/public/browser/hid_delegate.h
index e4cc2905082..758fdbf3a8d 100644
--- a/chromium/content/public/browser/hid_delegate.h
+++ b/chromium/content/public/browser/hid_delegate.h
@@ -8,6 +8,7 @@
#include <memory>
#include <vector>
+#include "base/observer_list_types.h"
#include "content/common/content_export.h"
#include "content/public/browser/hid_chooser.h"
#include "services/device/public/mojom/hid.mojom-forward.h"
@@ -26,6 +27,18 @@ class CONTENT_EXPORT HidDelegate {
public:
virtual ~HidDelegate() = default;
+ class Observer : public base::CheckedObserver {
+ public:
+ // Events forwarded from HidChooserContext::DeviceObserver:
+ virtual void OnDeviceAdded(const device::mojom::HidDeviceInfo&) = 0;
+ virtual void OnDeviceRemoved(const device::mojom::HidDeviceInfo&) = 0;
+ virtual void OnHidManagerConnectionError() = 0;
+
+ // Event forwarded from permissions::ChooserContextBase::PermissionObserver:
+ virtual void OnPermissionRevoked(const url::Origin& requesting_origin,
+ const url::Origin& embedding_origin) = 0;
+ };
+
// Shows a chooser for the user to select a HID device. |callback| will be
// run when the prompt is closed. Deleting the returned object will cancel the
// prompt.
@@ -58,6 +71,11 @@ class CONTENT_EXPORT HidDelegate {
// possible.
virtual device::mojom::HidManager* GetHidManager(
WebContents* web_contents) = 0;
+
+ // Functions to manage the set of Observer instances registered to this
+ // object.
+ virtual void AddObserver(RenderFrameHost* frame, Observer* observer) = 0;
+ virtual void RemoveObserver(RenderFrameHost* frame, Observer* observer) = 0;
};
} // namespace content