mirror of
https://github.com/servo/servo.git
synced 2025-06-23 08:34:42 +01:00
104 lines
3.6 KiB
Text
104 lines
3.6 KiB
Text
// -----------------------------------------------------------------------------
|
|
// DOM
|
|
// -----------------------------------------------------------------------------
|
|
[Exposed=(Window,Worker)]
|
|
interface EventTarget {
|
|
void addEventListener(DOMString type, EventListener? callback, optional boolean capture = false);
|
|
void removeEventListener(DOMString type, EventListener? callback, optional boolean capture = false);
|
|
boolean dispatchEvent(Event event);
|
|
};
|
|
|
|
callback interface EventListener {
|
|
void handleEvent(Event event);
|
|
};
|
|
|
|
// -----------------------------------------------------------------------------
|
|
// 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(DOMString... urls);
|
|
|
|
attribute OnErrorEventHandler onerror;
|
|
|
|
attribute EventHandler onoffline;
|
|
attribute EventHandler ononline;
|
|
};
|
|
|
|
[Global=(Worker,DedicatedWorker),Exposed=DedicatedWorker]
|
|
/*sealed*/ interface DedicatedWorkerGlobalScope : WorkerGlobalScope {
|
|
void postMessage(any message, optional sequence<Transferable> transfer);
|
|
void close();
|
|
attribute EventHandler onmessage;
|
|
};
|
|
|
|
WorkerGlobalScope implements WindowTimers;
|
|
WorkerGlobalScope implements WindowBase64;
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface WindowTimers {
|
|
long setTimeout(Function handler, optional long timeout = 0, any... arguments);
|
|
long setTimeout(DOMString handler, optional long timeout = 0, any... arguments);
|
|
void clearTimeout(optional long handle = 0);
|
|
long setInterval(Function handler, optional long timeout = 0, any... arguments);
|
|
long setInterval(DOMString handler, optional long timeout = 0, any... arguments);
|
|
void clearInterval(optional long handle = 0);
|
|
};
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface WindowBase64 {
|
|
DOMString btoa(DOMString btoa);
|
|
DOMString atob(DOMString atob);
|
|
};
|
|
|
|
[Exposed=Worker]
|
|
interface WorkerNavigator {};
|
|
WorkerNavigator implements NavigatorID;
|
|
WorkerNavigator implements NavigatorLanguage;
|
|
WorkerNavigator implements NavigatorOnLine;
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface NavigatorID {
|
|
readonly attribute DOMString appCodeName; // constant "Mozilla"
|
|
readonly attribute DOMString appName;
|
|
readonly attribute DOMString appVersion;
|
|
readonly attribute DOMString platform;
|
|
readonly attribute DOMString product; // constant "Gecko"
|
|
readonly attribute DOMString userAgent;
|
|
};
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface NavigatorLanguage {
|
|
readonly attribute DOMString? language;
|
|
readonly attribute DOMString[] languages;
|
|
};
|
|
|
|
[NoInterfaceObject, Exposed=(Window,Worker)]
|
|
interface NavigatorOnLine {
|
|
readonly attribute boolean onLine;
|
|
};
|
|
|
|
[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;
|
|
};
|