2009-04-09 Jian Li <jianli@chromium.org>
[WebKit-https.git] / WebCore / bindings / v8 / WorkerContextExecutionProxy.h
index 70f9fc5..3f07377 100644 (file)
@@ -64,6 +64,9 @@ namespace WebCore {
         static v8::Handle<v8::Value> EventTargetToV8Object(EventTarget* target);
         static v8::Handle<v8::Value> WorkerContextToV8Object(WorkerContext* wc);
 
         static v8::Handle<v8::Value> EventTargetToV8Object(EventTarget* target);
         static v8::Handle<v8::Value> WorkerContextToV8Object(WorkerContext* wc);
 
+        // Finds/creates event listener wrappers.
+        PassRefPtr<V8EventListener> findOrCreateObjectEventListener(v8::Local<v8::Value> object, bool isInline, bool findOnly);
+
         // Track the event so that we can detach it from the JS wrapper when a worker
         // terminates. This is needed because we need to be able to dispose these
         // events and releases references to their event targets: WorkerContext.
         // Track the event so that we can detach it from the JS wrapper when a worker
         // terminates. This is needed because we need to be able to dispose these
         // events and releases references to their event targets: WorkerContext.
@@ -75,7 +78,7 @@ namespace WebCore {
         // Returns WorkerContext object.
         WorkerContext* workerContext() { return m_workerContext; }
 
         // Returns WorkerContext object.
         WorkerContext* workerContext() { return m_workerContext; }
 
-        // Returns WorkerContextExecutionProxy object of the currently executing context.
+        // Returns WorkerContextExecutionProxy object of the currently executing context. 0 will be returned if the current executing context is not the worker context.
         static WorkerContextExecutionProxy* retrieve();
 
         // Enables HTML5 worker support.
         static WorkerContextExecutionProxy* retrieve();
 
         // Enables HTML5 worker support.
@@ -85,6 +88,7 @@ namespace WebCore {
     private:
         void initContextIfNeeded();
         void dispose();
     private:
         void initContextIfNeeded();
         void dispose();
+        PassRefPtr<V8EventListener> findOrCreateEventListenerHelper(v8::Local<v8::Value> object, bool isInline, bool findOnly, bool createObjectEventListener);
 
         // Run an already compiled script.
         v8::Local<v8::Value> runScript(v8::Handle<v8::Script>);
 
         // Run an already compiled script.
         v8::Local<v8::Value> runScript(v8::Handle<v8::Script>);