2009-05-01 Sam Weinig <sam@webkit.org>
[WebKit-https.git] / WebCore / workers / WorkerContext.idl
index f6ec3b4..855abef 100644 (file)
@@ -34,31 +34,35 @@ module threads {
         LegacyParent=JSWorkerContextBase,
         NoStaticTables
     ] WorkerContext {
-#if defined(LANGUAGE_JAVASCRIPT)
-        attribute [Custom] WorkerContext self;
-#endif
 
-        attribute EventListener onmessage;
-        void postMessage(in DOMString message);
-        [Custom] void importScripts(/* urls */);
+        // WorkerGlobalScope
+                 attribute [Replaceable] WorkerContext self;
+                 attribute [Replaceable] WorkerLocation location;
+        // void close();
+        //         attribute EventListener onclose;
+        //         attribute EventListener onerror;
 
-        attribute [Replaceable] WorkerLocation location;
-        attribute [Replaceable] WorkerNavigator navigator;
-        
-        attribute MessageEventConstructor MessageEvent;
-        attribute WorkerLocationConstructor WorkerLocation;
+        // WorkerUtils
+        [Custom] void importScripts(/*[Variadic] in DOMString urls */);
+                 attribute [Replaceable] WorkerNavigator navigator;
+        // Database openDatabase(in DOMString name, in DOMString version, in DOMString displayName, in unsigned long estimatedSize);
+        // DatabaseSync openDatabaseSync(in DOMString name, in DOMString version, in DOMString displayName, in unsigned long estimatedSize);
+
+
+        // DedicatedWorkerGlobalScope
+        void postMessage(in DOMString message);
+                 attribute EventListener onmessage;
 
-        attribute [JSCCustomGetter] XMLHttpRequestConstructor XMLHttpRequest;
 
         // Timers
         [Custom] long setTimeout(in TimeoutHandler handler, in long timeout);
         // [Custom] long setTimeout(in DOMString code, in long timeout);
         void clearTimeout(in long handle);
-
         [Custom] long setInterval(in TimeoutHandler handler, in long timeout);
         // [Custom] long setInterval(in DOMString code, in long timeout);
         void clearInterval(in long handle);
 
+
         // EventTarget interface
         [Custom] void addEventListener(in DOMString type, 
                                        in EventListener listener, 
@@ -68,6 +72,13 @@ module threads {
                                           in boolean useCapture);
         boolean dispatchEvent(in Event evt)
             raises(EventException);
+
+
+        // Constructors
+        attribute MessageEventConstructor MessageEvent;
+        attribute WorkerLocationConstructor WorkerLocation;
+
+        attribute [JSCCustomGetter] XMLHttpRequestConstructor XMLHttpRequest;
     };
 
 }