summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/modules/hid/hid.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/modules/hid/hid.cc')
-rw-r--r--chromium/third_party/blink/renderer/modules/hid/hid.cc43
1 files changed, 20 insertions, 23 deletions
diff --git a/chromium/third_party/blink/renderer/modules/hid/hid.cc b/chromium/third_party/blink/renderer/modules/hid/hid.cc
index c4a3e1bc21e..dd6d595b1f2 100644
--- a/chromium/third_party/blink/renderer/modules/hid/hid.cc
+++ b/chromium/third_party/blink/renderer/modules/hid/hid.cc
@@ -4,7 +4,7 @@
#include "third_party/blink/renderer/modules/hid/hid.h"
-#include "services/service_manager/public/cpp/interface_provider.h"
+#include "third_party/blink/public/common/browser_interface_broker_proxy.h"
#include "third_party/blink/public/mojom/feature_policy/feature_policy.mojom-blink.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
@@ -22,6 +22,7 @@ namespace blink {
namespace {
+const char kContextGone[] = "Script context has shut down.";
const char kFeaturePolicyBlocked[] =
"Access to the feature \"hid\" is disallowed by feature policy.";
const char kNoDeviceSelected[] = "No device selected.";
@@ -101,20 +102,19 @@ void HID::AddedEventListener(const AtomicString& event_type,
// and disconnect events.
}
-ScriptPromise HID::getDevices(ScriptState* script_state) {
+ScriptPromise HID::getDevices(ScriptState* script_state,
+ ExceptionState& exception_state) {
auto* context = GetExecutionContext();
if (!context) {
- return ScriptPromise::RejectWithDOMException(
- script_state, MakeGarbageCollected<DOMException>(
- DOMExceptionCode::kNotSupportedError));
+ exception_state.ThrowDOMException(DOMExceptionCode::kNotSupportedError,
+ kContextGone);
+ return ScriptPromise();
}
if (!context->GetSecurityContext().IsFeatureEnabled(
mojom::FeaturePolicyFeature::kHid, ReportOptions::kReportOnFailure)) {
- return ScriptPromise::RejectWithDOMException(
- script_state,
- MakeGarbageCollected<DOMException>(DOMExceptionCode::kSecurityError,
- kFeaturePolicyBlocked));
+ exception_state.ThrowSecurityError(kFeaturePolicyBlocked);
+ return ScriptPromise();
}
auto* resolver = MakeGarbageCollected<ScriptPromiseResolver>(script_state);
@@ -127,28 +127,25 @@ ScriptPromise HID::getDevices(ScriptState* script_state) {
}
ScriptPromise HID::requestDevice(ScriptState* script_state,
- const HIDDeviceRequestOptions* options) {
+ const HIDDeviceRequestOptions* options,
+ ExceptionState& exception_state) {
auto* frame = GetFrame();
if (!frame || !frame->GetDocument()) {
- return ScriptPromise::RejectWithDOMException(
- script_state, MakeGarbageCollected<DOMException>(
- DOMExceptionCode::kNotSupportedError));
+ exception_state.ThrowDOMException(DOMExceptionCode::kNotSupportedError,
+ kContextGone);
+ return ScriptPromise();
}
if (!frame->GetDocument()->IsFeatureEnabled(
mojom::FeaturePolicyFeature::kHid, ReportOptions::kReportOnFailure)) {
- return ScriptPromise::RejectWithDOMException(
- script_state,
- MakeGarbageCollected<DOMException>(DOMExceptionCode::kSecurityError,
- kFeaturePolicyBlocked));
+ exception_state.ThrowSecurityError(kFeaturePolicyBlocked);
+ return ScriptPromise();
}
if (!LocalFrame::HasTransientUserActivation(frame)) {
- return ScriptPromise::RejectWithDOMException(
- script_state,
- MakeGarbageCollected<DOMException>(
- DOMExceptionCode::kSecurityError,
- "Must be handling a user gesture to show a permission request."));
+ exception_state.ThrowSecurityError(
+ "Must be handling a user gesture to show a permission request.");
+ return ScriptPromise();
}
auto* resolver = MakeGarbageCollected<ScriptPromiseResolver>(script_state);
@@ -230,7 +227,7 @@ void HID::EnsureServiceConnection() {
auto task_runner =
GetExecutionContext()->GetTaskRunner(TaskType::kMiscPlatformAPI);
- GetExecutionContext()->GetInterfaceProvider()->GetInterface(
+ GetExecutionContext()->GetBrowserInterfaceBroker().GetInterface(
service_.BindNewPipeAndPassReceiver(task_runner));
service_.set_disconnect_handler(
WTF::Bind(&HID::OnServiceConnectionError, WrapWeakPersistent(this)));