mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-24 18:55:30 +00:00
a1b638d149
MozReview-Commit-ID: DfvN9mAFYhI --HG-- rename : testing/web-platform/tests/conformance-checkers/html-svg/animate-elem-77-t-novalid.html => testing/web-platform/tests/conformance-checkers/html-svg/animate-elem-77-t-isvalid.html rename : testing/web-platform/tests/conformance-checkers/html-svg/linking-a-10-f-novalid.html => testing/web-platform/tests/conformance-checkers/html-svg/linking-a-10-f-isvalid.html rename : testing/web-platform/tests/conformance-checkers/html/elements/picture/srcset-microsyntax-leading-dot-x-novalid.html => testing/web-platform/tests/conformance-checkers/html/elements/picture/srcset-microsyntax-leading-dot-x-valid.html rename : testing/web-platform/tests/content-security-policy/_unapproved/script-nonces-hidden.html.headers => testing/web-platform/tests/content-security-policy/nonce-hiding/script-nonces-hidden.tentative.html.headers rename : testing/web-platform/tests/content-security-policy/_unapproved/svgscript-nonces-hidden.html.headers => testing/web-platform/tests/content-security-policy/nonce-hiding/svgscript-nonces-hidden.tentative.html.headers rename : testing/web-platform/tests/html/semantics/interactive-elements/context-menus/contextmenu-event-manual.htm => testing/web-platform/tests/html/webappapis/scripting/events/contextmenu-event-manual.htm
177 lines
5.7 KiB
Plaintext
177 lines
5.7 KiB
Plaintext
// Copied from https://wicg.github.io/webusb/#idl-index minus the
|
|
// definitions related to Permissions API integration which is unstable.
|
|
|
|
dictionary USBDeviceFilter {
|
|
unsigned short vendorId;
|
|
unsigned short productId;
|
|
octet classCode;
|
|
octet subclassCode;
|
|
octet protocolCode;
|
|
DOMString serialNumber;
|
|
};
|
|
|
|
dictionary USBDeviceRequestOptions {
|
|
required sequence<USBDeviceFilter> filters;
|
|
};
|
|
|
|
interface USB : EventTarget {
|
|
attribute EventHandler onconnect;
|
|
attribute EventHandler ondisconnect;
|
|
Promise<sequence<USBDevice>> getDevices();
|
|
Promise<USBDevice> requestDevice(USBDeviceRequestOptions options);
|
|
};
|
|
|
|
[SecureContext]
|
|
partial interface Navigator {
|
|
[SameObject] readonly attribute USB usb;
|
|
};
|
|
|
|
dictionary USBConnectionEventInit : EventInit {
|
|
required USBDevice device;
|
|
};
|
|
|
|
[Constructor(DOMString type, USBConnectionEventInit eventInitDict)]
|
|
interface USBConnectionEvent : Event {
|
|
[SameObject] readonly attribute USBDevice device;
|
|
};
|
|
|
|
interface USBDevice {
|
|
readonly attribute octet usbVersionMajor;
|
|
readonly attribute octet usbVersionMinor;
|
|
readonly attribute octet usbVersionSubminor;
|
|
readonly attribute octet deviceClass;
|
|
readonly attribute octet deviceSubclass;
|
|
readonly attribute octet deviceProtocol;
|
|
readonly attribute unsigned short vendorId;
|
|
readonly attribute unsigned short productId;
|
|
readonly attribute octet deviceVersionMajor;
|
|
readonly attribute octet deviceVersionMinor;
|
|
readonly attribute octet deviceVersionSubminor;
|
|
readonly attribute DOMString? manufacturerName;
|
|
readonly attribute DOMString? productName;
|
|
readonly attribute DOMString? serialNumber;
|
|
readonly attribute USBConfiguration? configuration;
|
|
readonly attribute FrozenArray<USBConfiguration> configurations;
|
|
readonly attribute boolean opened;
|
|
Promise<void> open();
|
|
Promise<void> close();
|
|
Promise<void> selectConfiguration(octet configurationValue);
|
|
Promise<void> claimInterface(octet interfaceNumber);
|
|
Promise<void> releaseInterface(octet interfaceNumber);
|
|
Promise<void> selectAlternateInterface(octet interfaceNumber, octet alternateSetting);
|
|
Promise<USBInTransferResult> controlTransferIn(USBControlTransferParameters setup, unsigned short length);
|
|
Promise<USBOutTransferResult> controlTransferOut(USBControlTransferParameters setup, optional BufferSource data);
|
|
Promise<void> clearHalt(USBDirection direction, octet endpointNumber);
|
|
Promise<USBInTransferResult> transferIn(octet endpointNumber, unsigned long length);
|
|
Promise<USBOutTransferResult> transferOut(octet endpointNumber, BufferSource data);
|
|
Promise<USBIsochronousInTransferResult> isochronousTransferIn(octet endpointNumber, sequence<unsigned long> packetLengths);
|
|
Promise<USBIsochronousOutTransferResult> isochronousTransferOut(octet endpointNumber, BufferSource data, sequence<unsigned long> packetLengths);
|
|
Promise<void> reset();
|
|
};
|
|
|
|
enum USBRequestType {
|
|
"standard",
|
|
"class",
|
|
"vendor"
|
|
};
|
|
|
|
enum USBRecipient {
|
|
"device",
|
|
"interface",
|
|
"endpoint",
|
|
"other"
|
|
};
|
|
|
|
enum USBTransferStatus {
|
|
"ok",
|
|
"stall",
|
|
"babble"
|
|
};
|
|
|
|
dictionary USBControlTransferParameters {
|
|
required USBRequestType requestType;
|
|
required USBRecipient recipient;
|
|
required octet request;
|
|
required unsigned short value;
|
|
required unsigned short index;
|
|
};
|
|
|
|
[Constructor(USBTransferStatus status, optional DataView? data)]
|
|
interface USBInTransferResult {
|
|
readonly attribute DataView? data;
|
|
readonly attribute USBTransferStatus status;
|
|
};
|
|
|
|
[Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0)]
|
|
interface USBOutTransferResult {
|
|
readonly attribute unsigned long bytesWritten;
|
|
readonly attribute USBTransferStatus status;
|
|
};
|
|
|
|
[Constructor(USBTransferStatus status, optional DataView? data)]
|
|
interface USBIsochronousInTransferPacket {
|
|
readonly attribute DataView? data;
|
|
readonly attribute USBTransferStatus status;
|
|
};
|
|
|
|
[Constructor(sequence<USBIsochronousInTransferPacket> packets, optional DataView? data)]
|
|
interface USBIsochronousInTransferResult {
|
|
readonly attribute DataView? data;
|
|
readonly attribute FrozenArray<USBIsochronousInTransferPacket> packets;
|
|
};
|
|
|
|
[Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0)]
|
|
interface USBIsochronousOutTransferPacket {
|
|
readonly attribute unsigned long bytesWritten;
|
|
readonly attribute USBTransferStatus status;
|
|
};
|
|
|
|
[Constructor(sequence<USBIsochronousOutTransferPacket> packets)]
|
|
interface USBIsochronousOutTransferResult {
|
|
readonly attribute FrozenArray<USBIsochronousOutTransferPacket> packets;
|
|
};
|
|
|
|
[Constructor(USBDevice device, octet configurationValue)]
|
|
interface USBConfiguration {
|
|
readonly attribute octet configurationValue;
|
|
readonly attribute DOMString? configurationName;
|
|
readonly attribute FrozenArray<USBInterface> interfaces;
|
|
};
|
|
|
|
[Constructor(USBConfiguration configuration, octet interfaceNumber)]
|
|
interface USBInterface {
|
|
readonly attribute octet interfaceNumber;
|
|
readonly attribute USBAlternateInterface alternate;
|
|
readonly attribute FrozenArray<USBAlternateInterface> alternates;
|
|
readonly attribute boolean claimed;
|
|
};
|
|
|
|
[Constructor(USBInterface deviceInterface, octet alternateSetting)]
|
|
interface USBAlternateInterface {
|
|
readonly attribute octet alternateSetting;
|
|
readonly attribute octet interfaceClass;
|
|
readonly attribute octet interfaceSubclass;
|
|
readonly attribute octet interfaceProtocol;
|
|
readonly attribute DOMString? interfaceName;
|
|
readonly attribute FrozenArray<USBEndpoint> endpoints;
|
|
};
|
|
|
|
enum USBDirection {
|
|
"in",
|
|
"out"
|
|
};
|
|
|
|
enum USBEndpointType {
|
|
"bulk",
|
|
"interrupt",
|
|
"isochronous"
|
|
};
|
|
|
|
[Constructor(USBAlternateInterface alternate, octet endpointNumber, USBDirection direction)]
|
|
interface USBEndpoint {
|
|
readonly attribute octet endpointNumber;
|
|
readonly attribute USBDirection direction;
|
|
readonly attribute USBEndpointType type;
|
|
readonly attribute unsigned long packetSize;
|
|
};
|