LayoutTests:
Reviewed by Darin.
Re-landing test case for:
- various event cleanup, including fixing of the load event for iframes
http://bugzilla.opendarwin.org/show_bug.cgi?id=7079
* fast/events/iframe-object-onload-expected.txt: Added.
* fast/events/iframe-object-onload.html: Added.
- changed expected results and description for this test, unload should
not fire in this case:
* fast/events/onunload-body-property-expected.txt:
* fast/events/onunload-body-property.html:
- changed from UTF-16 to ASCII, there was no reason for this to be UTF-16.
* fast/dom/attr_dead_doc.html:
WebCore:
Reviewed by Darin.
Re-landed the following with more fixes so it does not break tests:
- various event cleanup, including fixing of the load event for iframes
http://bugzilla.opendarwin.org/show_bug.cgi?id=7079
Specific changes:
- don't bother to nil-check the document, a node can never have a null document now
- move temp event forgetting from dispatchEvent to dispatchGenericEvent
- pass event down using RefPtr::release() to avoid ref thrashing
- support default handlers even for non-bubbling events (only on
target node) and skip calling default event handler explicitly in
callers
- dispatch a whole separate load event to a frame document's containing frame
- don't let propagationStopped prevent this new event
- remove bogus security check for iframe onload
- dispatch window events on the document, not the body, and also for non-html
- set onload, onunload, onbeforeunload from frameset tags on the window object
- don't restrict load/unload events to HTML
- send default handler to the dispatch object as previously
* bridge/mac/MacFrame.mm:
(WebCore::MacFrame::shouldClose):
* khtml/html/html_baseimpl.cpp:
(WebCore::HTMLFrameElementImpl::parseMappedAttribute):
(WebCore::HTMLFrameSetElementImpl::parseMappedAttribute):
* khtml/xml/DocumentImpl.cpp:
(WebCore::DocumentImpl::implicitClose):
* khtml/xml/NodeImpl.cpp:
(WebCore::NodeImpl::dispatchEvent):
(WebCore::NodeImpl::dispatchGenericEvent):
(WebCore::NodeImpl::dispatchWindowEvent):
* khtml/xml/NodeImpl.h:
* page/Frame.cpp:
(WebCore::Frame::stopLoading):
(WebCore::Frame::setWindowHasFocus):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@12587
268f45cc-cd09-0410-ab3c-
d52691b4dbfc