Commit 6ed42771 authored by Ovidio Henriquez's avatar Ovidio Henriquez Committed by Commit Bot

Clean up WebUSB on Shared Worker code

This change removes the WebUSBOnSharedWorker flag and the Blink IDL
changes made to expose WebUSB in the SharedWorkerGlobalScope, since the
feature will not be implemented anytime soon.

Bug: 837414
Change-Id: I0bf49b8bb7fc9ded42d43732ed1c01c0b6831ffc
Reviewed-on: https://chromium-review.googlesource.com/1153222
Commit-Queue: Ovidio Henriquez <odejesush@chromium.org>
Reviewed-by: default avatarReilly Grant <reillyg@chromium.org>
Reviewed-by: default avatarChong Zhang <chongz@chromium.org>
Reviewed-by: default avatarPhilip Jägenstedt <foolip@chromium.org>
Cr-Commit-Position: refs/heads/master@{#580261}
parent e5e5b5a3
...@@ -1173,110 +1173,6 @@ Starting worker: resources/global-interface-listing-worker.js ...@@ -1173,110 +1173,6 @@ Starting worker: resources/global-interface-listing-worker.js
[Worker] method sort [Worker] method sort
[Worker] method toString [Worker] method toString
[Worker] method values [Worker] method values
[Worker] interface USB : EventTarget
[Worker] attribute @@toStringTag
[Worker] getter onconnect
[Worker] getter ondisconnect
[Worker] method constructor
[Worker] method getDevices
[Worker] setter onconnect
[Worker] setter ondisconnect
[Worker] interface USBAlternateInterface
[Worker] attribute @@toStringTag
[Worker] getter alternateSetting
[Worker] getter endpoints
[Worker] getter interfaceClass
[Worker] getter interfaceName
[Worker] getter interfaceProtocol
[Worker] getter interfaceSubclass
[Worker] method constructor
[Worker] interface USBConfiguration
[Worker] attribute @@toStringTag
[Worker] getter configurationName
[Worker] getter configurationValue
[Worker] getter interfaces
[Worker] method constructor
[Worker] interface USBConnectionEvent : Event
[Worker] attribute @@toStringTag
[Worker] getter device
[Worker] method constructor
[Worker] interface USBDevice
[Worker] attribute @@toStringTag
[Worker] getter configuration
[Worker] getter configurations
[Worker] getter deviceClass
[Worker] getter deviceProtocol
[Worker] getter deviceSubclass
[Worker] getter deviceVersionMajor
[Worker] getter deviceVersionMinor
[Worker] getter deviceVersionSubminor
[Worker] getter manufacturerName
[Worker] getter opened
[Worker] getter productId
[Worker] getter productName
[Worker] getter serialNumber
[Worker] getter usbVersionMajor
[Worker] getter usbVersionMinor
[Worker] getter usbVersionSubminor
[Worker] getter vendorId
[Worker] method claimInterface
[Worker] method clearHalt
[Worker] method close
[Worker] method constructor
[Worker] method controlTransferIn
[Worker] method controlTransferOut
[Worker] method isochronousTransferIn
[Worker] method isochronousTransferOut
[Worker] method open
[Worker] method releaseInterface
[Worker] method reset
[Worker] method selectAlternateInterface
[Worker] method selectConfiguration
[Worker] method transferIn
[Worker] method transferOut
[Worker] interface USBEndpoint
[Worker] attribute @@toStringTag
[Worker] getter direction
[Worker] getter endpointNumber
[Worker] getter packetSize
[Worker] getter type
[Worker] method constructor
[Worker] interface USBInTransferResult
[Worker] attribute @@toStringTag
[Worker] getter data
[Worker] getter status
[Worker] method constructor
[Worker] interface USBInterface
[Worker] attribute @@toStringTag
[Worker] getter alternate
[Worker] getter alternates
[Worker] getter claimed
[Worker] getter interfaceNumber
[Worker] method constructor
[Worker] interface USBIsochronousInTransferPacket
[Worker] attribute @@toStringTag
[Worker] getter data
[Worker] getter status
[Worker] method constructor
[Worker] interface USBIsochronousInTransferResult
[Worker] attribute @@toStringTag
[Worker] getter data
[Worker] getter packets
[Worker] method constructor
[Worker] interface USBIsochronousOutTransferPacket
[Worker] attribute @@toStringTag
[Worker] getter bytesWritten
[Worker] getter status
[Worker] method constructor
[Worker] interface USBIsochronousOutTransferResult
[Worker] attribute @@toStringTag
[Worker] getter packets
[Worker] method constructor
[Worker] interface USBOutTransferResult
[Worker] attribute @@toStringTag
[Worker] getter bytesWritten
[Worker] getter status
[Worker] method constructor
[Worker] interface WebGL2ComputeRenderingContext [Worker] interface WebGL2ComputeRenderingContext
[Worker] attribute @@toStringTag [Worker] attribute @@toStringTag
[Worker] attribute ACTIVE_ATOMIC_COUNTER_BUFFERS [Worker] attribute ACTIVE_ATOMIC_COUNTER_BUFFERS
......
...@@ -276,12 +276,9 @@ bool USB::IsContextSupported() const { ...@@ -276,12 +276,9 @@ bool USB::IsContextSupported() const {
if (!context) if (!context)
return false; return false;
DCHECK(context->IsDocument() || context->IsDedicatedWorkerGlobalScope() || DCHECK(context->IsDocument() || context->IsDedicatedWorkerGlobalScope());
context->IsSharedWorkerGlobalScope());
DCHECK(!context->IsDedicatedWorkerGlobalScope() || DCHECK(!context->IsDedicatedWorkerGlobalScope() ||
RuntimeEnabledFeatures::WebUSBOnDedicatedWorkersEnabled()); RuntimeEnabledFeatures::WebUSBOnDedicatedWorkersEnabled());
DCHECK(!context->IsSharedWorkerGlobalScope() ||
RuntimeEnabledFeatures::WebUSBOnSharedWorkersEnabled());
return true; return true;
} }
...@@ -289,15 +286,7 @@ bool USB::IsContextSupported() const { ...@@ -289,15 +286,7 @@ bool USB::IsContextSupported() const {
bool USB::IsFeatureEnabled() const { bool USB::IsFeatureEnabled() const {
ExecutionContext* context = GetExecutionContext(); ExecutionContext* context = GetExecutionContext();
FeaturePolicy* policy = context->GetSecurityContext().GetFeaturePolicy(); FeaturePolicy* policy = context->GetSecurityContext().GetFeaturePolicy();
// Feature policy is not yet supported in all contexts. return policy->IsFeatureEnabled(mojom::FeaturePolicyFeature::kUsb);
if (policy)
return policy->IsFeatureEnabled(mojom::FeaturePolicyFeature::kUsb);
// TODO(https://crbug.com/843780): Enable this check for shared workers.
if (context->IsSharedWorkerGlobalScope())
return true;
return false;
} }
void USB::Trace(blink::Visitor* visitor) { void USB::Trace(blink::Visitor* visitor) {
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// https://wicg.github.io/webusb/#usb // https://wicg.github.io/webusb/#usb
[ [
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
SecureContext SecureContext
] interface USB : EventTarget { ] interface USB : EventTarget {
attribute EventHandler onconnect; attribute EventHandler onconnect;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
[ [
Constructor(USBInterface deviceInterface, octet alternateSetting), Constructor(USBInterface deviceInterface, octet alternateSetting),
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
RaisesException=Constructor, RaisesException=Constructor,
SecureContext SecureContext
] interface USBAlternateInterface { ] interface USBAlternateInterface {
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
[ [
Constructor(USBDevice device, octet configurationValue), Constructor(USBDevice device, octet configurationValue),
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
RaisesException=Constructor, RaisesException=Constructor,
SecureContext SecureContext
] interface USBConfiguration { ] interface USBConfiguration {
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
[ [
Constructor(DOMString type, USBConnectionEventInit eventInitDict), Constructor(DOMString type, USBConnectionEventInit eventInitDict),
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
SecureContext SecureContext
] interface USBConnectionEvent : Event { ] interface USBConnectionEvent : Event {
[SameObject] readonly attribute USBDevice device; [SameObject] readonly attribute USBDevice device;
......
...@@ -13,7 +13,7 @@ enum USBTransferStatus { ...@@ -13,7 +13,7 @@ enum USBTransferStatus {
// https://wicg.github.io/webusb/#device-usage // https://wicg.github.io/webusb/#device-usage
[ [
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
SecureContext SecureContext
] interface USBDevice { ] interface USBDevice {
readonly attribute octet usbVersionMajor; readonly attribute octet usbVersionMajor;
......
...@@ -17,7 +17,7 @@ enum USBEndpointType { ...@@ -17,7 +17,7 @@ enum USBEndpointType {
[ [
Constructor(USBAlternateInterface alternate, octet endpointNumber, USBDirection direction), Constructor(USBAlternateInterface alternate, octet endpointNumber, USBDirection direction),
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
RaisesException=Constructor, RaisesException=Constructor,
SecureContext SecureContext
] interface USBEndpoint { ] interface USBEndpoint {
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// https://wicg.github.io/webusb/#usbintransferresult // https://wicg.github.io/webusb/#usbintransferresult
[ [
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
Constructor(USBTransferStatus status, optional DataView? data), Constructor(USBTransferStatus status, optional DataView? data),
SecureContext SecureContext
] interface USBInTransferResult { ] interface USBInTransferResult {
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
[ [
Constructor(USBConfiguration configuration, octet interfaceNumber), Constructor(USBConfiguration configuration, octet interfaceNumber),
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
RaisesException=Constructor, RaisesException=Constructor,
SecureContext SecureContext
] interface USBInterface { ] interface USBInterface {
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
[ [
Constructor(USBTransferStatus status, optional DataView? data), Constructor(USBTransferStatus status, optional DataView? data),
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
SecureContext SecureContext
] interface USBIsochronousInTransferPacket { ] interface USBIsochronousInTransferPacket {
readonly attribute USBTransferStatus status; readonly attribute USBTransferStatus status;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
[ [
Constructor(sequence<USBIsochronousInTransferPacket> packets, optional DataView? data), Constructor(sequence<USBIsochronousInTransferPacket> packets, optional DataView? data),
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
SecureContext SecureContext
] interface USBIsochronousInTransferResult { ] interface USBIsochronousInTransferResult {
readonly attribute DataView? data; readonly attribute DataView? data;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
[ [
Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0), Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0),
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
SecureContext SecureContext
] interface USBIsochronousOutTransferPacket { ] interface USBIsochronousOutTransferPacket {
readonly attribute unsigned long bytesWritten; readonly attribute unsigned long bytesWritten;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
[ [
Constructor(sequence<USBIsochronousOutTransferPacket> packets), Constructor(sequence<USBIsochronousOutTransferPacket> packets),
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
SecureContext SecureContext
] interface USBIsochronousOutTransferResult { ] interface USBIsochronousOutTransferResult {
readonly attribute FrozenArray<USBIsochronousOutTransferPacket> packets; readonly attribute FrozenArray<USBIsochronousOutTransferPacket> packets;
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// https://wicg.github.io/webusb/#usbouttransferresult // https://wicg.github.io/webusb/#usbouttransferresult
[ [
Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, SharedWorker WebUSBOnSharedWorkers, Window WebUSB), Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, Window WebUSB),
Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0), Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0),
SecureContext SecureContext
] interface USBOutTransferResult { ] interface USBOutTransferResult {
......
...@@ -42,11 +42,8 @@ USB* WorkerNavigatorUSB::usb(ScriptState* script_state) { ...@@ -42,11 +42,8 @@ USB* WorkerNavigatorUSB::usb(ScriptState* script_state) {
bool isDedicatedWorkerAndEnabled = bool isDedicatedWorkerAndEnabled =
context->IsDedicatedWorkerGlobalScope() && context->IsDedicatedWorkerGlobalScope() &&
RuntimeEnabledFeatures::WebUSBOnDedicatedWorkersEnabled(); RuntimeEnabledFeatures::WebUSBOnDedicatedWorkersEnabled();
bool isSharedWorkerAndEnabled =
context->IsSharedWorkerGlobalScope() &&
RuntimeEnabledFeatures::WebUSBOnSharedWorkersEnabled();
if (isDedicatedWorkerAndEnabled || isSharedWorkerAndEnabled) { if (isDedicatedWorkerAndEnabled) {
usb_ = USB::Create(*context); usb_ = USB::Create(*context);
} }
} }
......
...@@ -1400,11 +1400,6 @@ ...@@ -1400,11 +1400,6 @@
status: "stable", status: "stable",
depends_on: ["WebUSB"], depends_on: ["WebUSB"],
}, },
{
name: "WebUSBOnSharedWorkers",
status: "test",
depends_on: ["WebUSB"],
},
{ {
name: "WebVR", name: "WebVR",
status: "experimental", status: "experimental",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment