[webkit-changes] cvs commit:
WebCore/layout-tests/dom/html/level2/events
dispatchEvent08-expected.txt dispatchEvent10-expected.txt
dispatchEvent11-expected.txt dispatchEvent12-expected.txt
dispatchEvent13-expected.txt
Darin
darin at opensource.apple.com
Sun Aug 14 01:28:02 PDT 2005
darin 05/08/14 01:28:02
Modified: . ChangeLog
khtml/ecma kjs_events.cpp
khtml/xml dom_nodeimpl.cpp
layout-tests/dom/html/level2/events
dispatchEvent08-expected.txt
dispatchEvent10-expected.txt
dispatchEvent11-expected.txt
dispatchEvent12-expected.txt
dispatchEvent13-expected.txt
Log:
Reviewed and landed by Darin.
Test cases added:
* layout-tests/dom/html/level2/events/dispatchEvent08-expected.txt:
* layout-tests/dom/html/level2/events/dispatchEvent10-expected.txt:
* layout-tests/dom/html/level2/events/dispatchEvent12-expected.txt:
These pass now.
* layout-tests/dom/html/level2/events/dispatchEvent11-expected.txt:
* layout-tests/dom/html/level2/events/dispatchEvent13-expected.txt:
These fail someplace else now.
* khtml/ecma/kjs_events.cpp:
(KJS::JSAbstractEventListener::handleEvent):
Check if the listener has a "handleEvent" function property and
call that.
* khtml/xml/dom_nodeimpl.cpp:
(DOM::NodeImpl::dispatchGenericEvent):
A capturing event listener should not be triggered if an event is
dispatched directly to the node to which the listener has been added.
Revision Changes Path
1.4568 +24 -0 WebCore/ChangeLog
Index: ChangeLog
===================================================================
RCS file: /cvs/root/WebCore/ChangeLog,v
retrieving revision 1.4567
retrieving revision 1.4568
diff -u -r1.4567 -r1.4568
--- ChangeLog 14 Aug 2005 08:18:46 -0000 1.4567
+++ ChangeLog 14 Aug 2005 08:27:57 -0000 1.4568
@@ -2,6 +2,30 @@
Reviewed and landed by Darin.
+ Test cases added:
+ * layout-tests/dom/html/level2/events/dispatchEvent08-expected.txt:
+ * layout-tests/dom/html/level2/events/dispatchEvent10-expected.txt:
+ * layout-tests/dom/html/level2/events/dispatchEvent12-expected.txt:
+ These pass now.
+
+ * layout-tests/dom/html/level2/events/dispatchEvent11-expected.txt:
+ * layout-tests/dom/html/level2/events/dispatchEvent13-expected.txt:
+ These fail someplace else now.
+
+ * khtml/ecma/kjs_events.cpp:
+ (KJS::JSAbstractEventListener::handleEvent):
+ Check if the listener has a "handleEvent" function property and
+ call that.
+
+ * khtml/xml/dom_nodeimpl.cpp:
+ (DOM::NodeImpl::dispatchGenericEvent):
+ A capturing event listener should not be triggered if an event is
+ dispatched directly to the node to which the listener has been added.
+
+2005-08-14 Anders Carlsson <andersca at mac.com>
+
+ Reviewed and landed by Darin.
+
Test cases added:
* layout-tests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2-expected.txt:
This passes now.
1.55 +21 -5 WebCore/khtml/ecma/kjs_events.cpp
Index: kjs_events.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_events.cpp,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -r1.54 -r1.55
--- kjs_events.cpp 8 Aug 2005 04:07:41 -0000 1.54
+++ kjs_events.cpp 14 Aug 2005 08:28:01 -0000 1.55
@@ -81,12 +81,24 @@
if (part)
proxy = KJSProxy::proxy( part );
- if (proxy && listener->implementsCall()) {
+ ScriptInterpreter *interpreter = static_cast<ScriptInterpreter *>(proxy->interpreter());
+ ExecState *exec = interpreter->globalExec();
+
+ bool hasHandleEvent = false;
+ ValueImp *handleEventFuncValue = 0;
+ ObjectImp *handleEventFunc = 0;
+
+ handleEventFuncValue = listener->get(exec, "handleEvent");
+ if (handleEventFuncValue->isObject()) {
+ handleEventFunc = static_cast<ObjectImp *>(handleEventFuncValue);
+
+ if (handleEventFunc->implementsCall())
+ hasHandleEvent = true;
+ }
+
+ if (proxy && (listener->implementsCall() || hasHandleEvent)) {
ref();
- ScriptInterpreter *interpreter = static_cast<ScriptInterpreter *>(proxy->interpreter());
- ExecState *exec = interpreter->globalExec();
-
List args;
args.append(getDOMEvent(exec,evt));
@@ -106,7 +118,11 @@
}
Interpreter::lock();
- ValueImp *retval = listener->call(exec, thisObj, args);
+ ValueImp *retval;
+ if (hasHandleEvent)
+ retval = handleEventFunc->call(exec, listener, args);
+ else
+ retval = listener->call(exec, thisObj, args);
Interpreter::unlock();
window->setCurrentEvent( 0 );
1.174 +0 -4 WebCore/khtml/xml/dom_nodeimpl.cpp
Index: dom_nodeimpl.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/xml/dom_nodeimpl.cpp,v
retrieving revision 1.173
retrieving revision 1.174
diff -u -r1.173 -r1.174
--- dom_nodeimpl.cpp 14 Aug 2005 08:18:50 -0000 1.173
+++ dom_nodeimpl.cpp 14 Aug 2005 08:28:01 -0000 1.174
@@ -560,10 +560,6 @@
evt->setEventPhase(Event::AT_TARGET);
evt->setCurrentTarget(it.current());
- // Capturing first. -dwh
- it.current()->handleLocalEvents(evt,true);
-
- // Bubbling second. -dwh
if (!evt->propagationStopped())
it.current()->handleLocalEvents(evt,false);
}
1.3 +2 -3 WebCore/layout-tests/dom/html/level2/events/dispatchEvent08-expected.txt
Index: dispatchEvent08-expected.txt
===================================================================
RCS file: /cvs/root/WebCore/layout-tests/dom/html/level2/events/dispatchEvent08-expected.txt,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- dispatchEvent08-expected.txt 9 Aug 2005 21:29:43 -0000 1.2
+++ dispatchEvent08-expected.txt 14 Aug 2005 08:28:01 -0000 1.3
@@ -1,3 +1,2 @@
-Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent08
-Status: failure
-Detail: atCount: assertEquals failed, actual 0, expected 1.
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent08
+Status: Success
1.3 +2 -3 WebCore/layout-tests/dom/html/level2/events/dispatchEvent10-expected.txt
Index: dispatchEvent10-expected.txt
===================================================================
RCS file: /cvs/root/WebCore/layout-tests/dom/html/level2/events/dispatchEvent10-expected.txt,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- dispatchEvent10-expected.txt 9 Aug 2005 21:29:43 -0000 1.2
+++ dispatchEvent10-expected.txt 14 Aug 2005 08:28:01 -0000 1.3
@@ -1,3 +1,2 @@
-Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent10
-Status: failure
-Detail: atCount: assertEquals failed, actual 0, expected 1.
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent10
+Status: Success
1.3 +3 -2 WebCore/layout-tests/dom/html/level2/events/dispatchEvent11-expected.txt
Index: dispatchEvent11-expected.txt
===================================================================
RCS file: /cvs/root/WebCore/layout-tests/dom/html/level2/events/dispatchEvent11-expected.txt,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- dispatchEvent11-expected.txt 9 Aug 2005 21:29:43 -0000 1.2
+++ dispatchEvent11-expected.txt 14 Aug 2005 08:28:01 -0000 1.3
@@ -1,2 +1,3 @@
-Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent11
-Status: Success
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent11
+Status: failure
+Detail: eventCount: assertEquals failed, actual 1, expected 0.
1.3 +2 -3 WebCore/layout-tests/dom/html/level2/events/dispatchEvent12-expected.txt
Index: dispatchEvent12-expected.txt
===================================================================
RCS file: /cvs/root/WebCore/layout-tests/dom/html/level2/events/dispatchEvent12-expected.txt,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- dispatchEvent12-expected.txt 9 Aug 2005 21:29:43 -0000 1.2
+++ dispatchEvent12-expected.txt 14 Aug 2005 08:28:01 -0000 1.3
@@ -1,3 +1,2 @@
-Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent12
-Status: failure
-Detail: eventCount: assertEquals failed, actual 0, expected 1.
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent12
+Status: Success
1.3 +1 -1 WebCore/layout-tests/dom/html/level2/events/dispatchEvent13-expected.txt
Index: dispatchEvent13-expected.txt
===================================================================
RCS file: /cvs/root/WebCore/layout-tests/dom/html/level2/events/dispatchEvent13-expected.txt,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- dispatchEvent13-expected.txt 9 Aug 2005 21:29:43 -0000 1.2
+++ dispatchEvent13-expected.txt 14 Aug 2005 08:28:01 -0000 1.3
@@ -1,3 +1,3 @@
Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent13
Status: failure
-Detail: eventCount: assertEquals failed, actual 0, expected 1.
+Detail: eventCount: assertEquals failed, actual 2, expected 1.
More information about the webkit-changes
mailing list