webengine/osswebengine/WebCore/bindings/js/kjs_events.cpp
changeset 10 a359256acfc6
parent 0 dd21522fd290
--- a/webengine/osswebengine/WebCore/bindings/js/kjs_events.cpp	Fri Jul 03 15:54:40 2009 +0100
+++ b/webengine/osswebengine/WebCore/bindings/js/kjs_events.cpp	Thu Aug 27 07:44:59 2009 +0300
@@ -145,6 +145,39 @@
     }
 }
 
+void JSAbstractEventListener::handleNetworkStateEvent(int param)
+{
+    JSObject* listener = listenerObj();
+    if (!listener)
+        return;
+    
+    Window* window = windowObj();
+    if (!window)
+        return;
+    
+    Frame *frame = window->impl()->frame();
+    if (!frame)
+        return;
+    KJSProxy* proxy = frame->scriptProxy();
+    if (!proxy)
+        return;
+
+    JSLock lock;
+
+    ScriptInterpreter* interpreter = proxy->interpreter();
+    ExecState* exec = interpreter->globalExec();
+    
+    List args;
+    if ( param != -1 )
+        args.append( jsNumber(param) );
+    JSValue* retval = listener->call(exec, window, args);
+    
+    if (exec->hadException())
+        exec->clearException();
+    
+    JSLock::unlock();
+}
+
 bool JSAbstractEventListener::isHTMLEventListener() const
 {
     return m_html;