webengine/osswebengine/WebCore/dom/Document.cpp
changeset 10 a359256acfc6
parent 5 10e98eab6f85
child 15 60c5402cb945
--- a/webengine/osswebengine/WebCore/dom/Document.cpp	Fri Jul 03 15:54:40 2009 +0100
+++ b/webengine/osswebengine/WebCore/dom/Document.cpp	Thu Aug 27 07:44:59 2009 +0300
@@ -253,16 +253,13 @@
 
 DeprecatedPtrList<Document>*  Document::changedDocuments = 0;
 
-struct cleanupChangedDocuments {
-    ~cleanupChangedDocuments() {
+void cleanupChangedDocuments() {
     	if(Document::changedDocuments)
     		{
     		delete Document::changedDocuments;
     		Document::changedDocuments = NULL;
     		}
-    }
-};
-static cleanupChangedDocuments deleteChangedDocuments;
+}
 
 // FrameView might be 0
 Document::Document(DOMImplementation* impl, Frame* frame, bool isXHTML)
@@ -2468,6 +2465,19 @@
             (*it)->listener()->handleEvent(evt, true);
 }
 
+void Document::handleNetworkEvent(const AtomicString &eventType, int param)
+{ 
+    if (m_windowEventListeners.isEmpty())
+        return;
+            
+    // if any html event listeners are registered on the window, then dispatch them here
+    RegisteredEventListenerList listenersCopy = m_windowEventListeners;
+    RegisteredEventListenerList::iterator it = listenersCopy.begin();
+    
+    for (; it != listenersCopy.end(); ++it)
+        if ((*it)->eventType() == eventType && !(*it)->removed())
+            (*it)->listener()->handleNetworkStateEvent(param);
+}
 
 void Document::defaultEventHandler(Event *evt)
 {