Reviewed by Eric & Maciej.
Fix serveral <use> issues:
- When events are dispatch to a referenced element, the actual event.target
has to be set to the corresponding SVGElementInstance object
- Node::shadowAncestorNode() should _not_ return the shadowParentNode for SVG elements
This is only needed for the HTML forms concept and breaks event dispatching for SVG shadow tree elements.
- Add SVGElementInstance as possible EventTarget in bindings/js/kjs_dom.cpp
(Now event.target returns the actual SVGElementInstance object for a shadow tree element)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=12502 (Reproducible crash when browsing SVG map.)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=12511 (<use> has event dispatching issues)
Added test: svg/custom/use-event-handler-on-use-element.svg
Added test: svg/custom/use-event-handler-on-referenced-element.svg
Added test: svg/custom/use-elementInstance-event-target.svg
Added test: svg/custom/use-elementInstance-methods.svg
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19378 268f45cc-cd09-0410-ab3c-d52691b4dbfc
30 files changed