| // ----------------------------------------------------------------------------- |
| // URL |
| // ----------------------------------------------------------------------------- |
| [NoInterfaceObject/*, |
| Exposed=(Window,Worker)*/] |
| interface URLUtilsReadOnly { |
| 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; |
| }; |
| |
| // ----------------------------------------------------------------------------- |
| // 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; |
| |
| void close(); |
| attribute OnErrorEventHandler onerror; |
| attribute EventHandler onlanguagechange; |
| attribute EventHandler onoffline; |
| attribute EventHandler ononline; |
| }; |
| |
| [Global/*=(Worker,DedicatedWorker),Exposed=DedicatedWorker*/] |
| /*sealed*/ interface DedicatedWorkerGlobalScope : WorkerGlobalScope { |
| void postMessage(any message, optional sequence<Transferable> transfer); |
| attribute EventHandler onmessage; |
| }; |
| |
| //[Exposed=Worker] |
| partial interface WorkerGlobalScope { // not obsolete |
| void importScripts(DOMString... urls); |
| readonly attribute WorkerNavigator navigator; |
| }; |
| 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 { }; |
| WorkerLocation implements URLUtilsReadOnly; |