mirror of
https://github.com/servo/servo.git
synced 2025-07-12 01:43:43 +01:00
133 lines
4.6 KiB
Text
133 lines
4.6 KiB
Text
// -----------------------------------------------------------------------------
|
|
// DOM
|
|
// -----------------------------------------------------------------------------
|
|
[Constructor(), Exposed=(Window,Worker)]
|
|
interface EventTarget {
|
|
void addEventListener(DOMString type, EventListener? callback, optional (AddEventListenerOptions or boolean) options);
|
|
void removeEventListener(DOMString type, EventListener? callback, optional (EventListenerOptions or boolean) options);
|
|
boolean dispatchEvent(Event event);
|
|
};
|
|
|
|
callback interface EventListener {
|
|
void handleEvent(Event event);
|
|
};
|
|
|
|
dictionary EventListenerOptions {
|
|
boolean capture = false;
|
|
};
|
|
|
|
dictionary AddEventListenerOptions : EventListenerOptions {
|
|
boolean passive = false;
|
|
boolean once = false;
|
|
};
|
|
|
|
// -----------------------------------------------------------------------------
|
|
// HTML
|
|
// -----------------------------------------------------------------------------
|
|
[TreatNonCallableAsNull]
|
|
callback EventHandlerNonNull = any (Event event);
|
|
typedef EventHandlerNonNull? EventHandler;
|
|
|
|
[TreatNonCallableAsNull]
|
|
callback OnErrorEventHandlerNonNull = any ((Event or DOMString) event, optional DOMString source, optional unsigned long lineno, optional unsigned long column, optional any error);
|
|
typedef OnErrorEventHandlerNonNull? OnErrorEventHandler;
|
|
|
|
[Exposed=Worker]
|
|
interface WorkerGlobalScope : EventTarget {
|
|
readonly attribute WorkerGlobalScope self;
|
|
readonly attribute WorkerLocation location;
|
|
readonly attribute WorkerNavigator navigator;
|
|
void importScripts(USVString... urls);
|
|
|
|
attribute OnErrorEventHandler onerror;
|
|
attribute EventHandler onlanguagechange;
|
|
attribute EventHandler onoffline;
|
|
attribute EventHandler ononline;
|
|
attribute EventHandler onrejectionhandled;
|
|
attribute EventHandler onunhandledrejection;
|
|
};
|
|
|
|
[Global=(Worker,DedicatedWorker),Exposed=DedicatedWorker]
|
|
interface DedicatedWorkerGlobalScope : WorkerGlobalScope {
|
|
[Replaceable] readonly attribute DOMString name;
|
|
|
|
void postMessage(any message, optional sequence<object> transfer = []);
|
|
|
|
void close();
|
|
|
|
attribute EventHandler onmessage;
|
|
attribute EventHandler onmessageerror;
|
|
};
|
|
|
|
typedef (DOMString or Function) TimerHandler;
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface WindowOrWorkerGlobalScope {
|
|
[Replaceable] readonly attribute USVString origin;
|
|
|
|
// base64 utility methods
|
|
DOMString btoa(DOMString data);
|
|
DOMString atob(DOMString data);
|
|
|
|
// timers
|
|
long setTimeout(TimerHandler handler, optional long timeout = 0, any... arguments);
|
|
void clearTimeout(optional long handle = 0);
|
|
long setInterval(TimerHandler handler, optional long timeout = 0, any... arguments);
|
|
void clearInterval(optional long handle = 0);
|
|
|
|
// ImageBitmap
|
|
Promise<ImageBitmap> createImageBitmap(ImageBitmapSource image, optional ImageBitmapOptions options);
|
|
Promise<ImageBitmap> createImageBitmap(ImageBitmapSource image, long sx, long sy, long sw, long sh, optional ImageBitmapOptions options);
|
|
};
|
|
WorkerGlobalScope implements WindowOrWorkerGlobalScope;
|
|
|
|
[Exposed=Worker]
|
|
interface WorkerNavigator {};
|
|
WorkerNavigator implements NavigatorID;
|
|
WorkerNavigator implements NavigatorLanguage;
|
|
WorkerNavigator implements NavigatorOnLine;
|
|
WorkerNavigator implements NavigatorConcurrentHardware;
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface NavigatorID {
|
|
readonly attribute DOMString appCodeName; // constant "Mozilla"
|
|
readonly attribute DOMString appName; // constant "Netscape"
|
|
readonly attribute DOMString appVersion;
|
|
readonly attribute DOMString platform;
|
|
readonly attribute DOMString product; // constant "Gecko"
|
|
[Exposed=Window] readonly attribute DOMString productSub;
|
|
readonly attribute DOMString userAgent;
|
|
[Exposed=Window] readonly attribute DOMString vendor;
|
|
[Exposed=Window] readonly attribute DOMString vendorSub; // constant ""
|
|
|
|
// also has additional members in a partial interface
|
|
};
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface NavigatorLanguage {
|
|
readonly attribute DOMString language;
|
|
readonly attribute FrozenArray<DOMString> languages;
|
|
};
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface NavigatorOnLine {
|
|
readonly attribute boolean onLine;
|
|
};
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface NavigatorConcurrentHardware {
|
|
readonly attribute unsigned long long hardwareConcurrency;
|
|
};
|
|
|
|
[Exposed=Worker]
|
|
interface WorkerLocation {
|
|
stringifier readonly attribute USVString href;
|
|
readonly attribute USVString origin;
|
|
readonly attribute USVString protocol;
|
|
readonly attribute USVString host;
|
|
readonly attribute USVString hostname;
|
|
readonly attribute USVString port;
|
|
readonly attribute USVString pathname;
|
|
readonly attribute USVString search;
|
|
readonly attribute USVString hash;
|
|
};
|