patch: another regressions from cancelBubble change

Maciej Stachowiak mjs at apple.com
Mon Nov 3 23:55:19 CET 2003


This was just plain stupid on my part:

-------------- next part --------------
Index: ChangeLog
===================================================================
RCS file: /local/home/cvs/Labyrinth/WebCore/ChangeLog,v
retrieving revision 1.2178
diff -u -p -r1.2178 ChangeLog
--- ChangeLog	2003/11/02 02:01:31	1.2178
+++ ChangeLog	2003/11/02 02:34:06
@@ -1,3 +1,15 @@
+2003-11-01  Maciej Stachowiak  <mjs at apple.com>
+
+        Reviewed by YOU?
+
+	- fixed 3469262 - REGRESSION (110-112): logitech page is very slow to load (due to style sheet updates?)
+	
+        * khtml/xml/dom_nodeimpl.cpp:
+        (NodeImpl::dispatchGenericEvent): Don't do default handling for
+	events that don't bubble. Not 100% sure why this caused the big
+	slowdown but it was a somewhat arbitrary change in my earlier
+	patch.
+
 2003-11-01  Darin Adler  <darin at apple.com>
 
         Reviewed by John.
Index: khtml/xml/dom_nodeimpl.cpp
===================================================================
RCS file: /local/home/cvs/Labyrinth/WebCore/khtml/xml/dom_nodeimpl.cpp,v
retrieving revision 1.46
diff -u -p -r1.46 khtml/xml/dom_nodeimpl.cpp
--- khtml/xml/dom_nodeimpl.cpp	2003/10/31 23:40:37	1.46
+++ khtml/xml/dom_nodeimpl.cpp	2003/11/02 02:34:07
@@ -570,11 +570,14 @@ bool NodeImpl::dispatchGenericEvent( Eve
     evt->setEventPhase(0); // I guess this is correct, the spec does not seem to say
                            // anything about the default event handler phase.
 
+
+    if (evt->bubbles()) {
     // now we call all default event handlers (this is not part of DOM - it is internal to khtml)
 
     it.toLast();
     for (; it.current() && !evt->propagationStopped() && !evt->defaultPrevented() && !evt->defaultHandled(); --it)
 	it.current()->defaultEventHandler(evt);
+    }
 
     // In the case of a mouse click, also send a DOMActivate event, which causes things like form submissions
     // to occur. Note that this only happens for _real_ mouse clicks (for which we get a KHTML_CLICK_EVENT or
-------------- next part --------------




More information about the Khtml-devel mailing list