haikuwebkit/LayoutTests/fast/events/event-attribute.html

38 lines
1.5 KiB
HTML
Raw Permalink Normal View History

Add the event handler content attributes that are defined in the spec to HTMLElement https://bugs.webkit.org/show_bug.cgi?id=86363 Reviewed by Ryosuke Niwa. Source/WebCore: Test: fast/events/event-attribute.html We are missing some event handler content attributes from HTMLElement that are defined in the spec. http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#event-handlers-on-elements,-document-objects,-and-window-objects * html/HTMLElement.cpp: (WebCore::HTMLElement::eventNameForAttributeName): Returns event name for a given attribute name by looking it up on a HashMap. (WebCore::HTMLElement::parseAttribute): Sets up event listeners for content attributes. * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::parseAttribute): Removed event listener content attributes that was added to HTMLElement. * html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::parseAttribute): Ditto. * html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::parseAttribute): Ditto. * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::parseAttribute): Ditto. * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::parseAttribute): Ditto. * html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::parseAttribute): Ditto. * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseAttribute): Ditto. * html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::parseAttribute): Ditto. * html/HTMLTextFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::parseAttribute): Ditto. * html/HTMLTrackElement.cpp: (WebCore::HTMLTrackElement::parseAttribute): Ditto. LayoutTests: * fast/events/event-attribute-expected.txt: Added. * fast/events/event-attribute.html: Added. Tests that setting attribute creates event listeners. * fast/events/form-onchange-expected.txt: Added. * fast/events/form-onchange.html: Added. Test for Bug 24516. Canonical link: https://commits.webkit.org/131920@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@147205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-03-29 09:59:09 +00:00
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
Change fast/e* files to use pre and post js files in LayoutTests/resources. https://bugs.webkit.org/show_bug.cgi?id=120975. Rubber stamped by Filip Pizlo. * fast/encoding/char-decoding-mac.html: * fast/encoding/char-decoding.html: * fast/encoding/char-encoding-mac.html: * fast/encoding/char-encoding.html: * fast/encoding/idn-security.html: * fast/encoding/invalid-xml.html: * fast/encoding/resources/invalid-xml.js: (runNextTest): * fast/events/autoscroll-in-overflow-hidden-html.html: * fast/events/autoscroll-should-not-stop-on-keypress.html: * fast/events/blur-focus-window-should-blur-focus-element.html: * fast/events/bogus-dropEffect-effectAllowed.html: * fast/events/caller-access-from-event-listener.html: * fast/events/check-defocus-event-order-when-triggered-by-mouse-click.html: * fast/events/check-defocus-event-order-when-triggered-by-tab.html: * fast/events/click-focus-control.html: * fast/events/click-range-slider.html: * fast/events/clientXY-in-zoom-and-scroll.html: * fast/events/constructors/before-load-event-constructor.html: * fast/events/constructors/close-event-constructor.html: * fast/events/constructors/composition-event-constructor.html: * fast/events/constructors/custom-event-constructor.html: * fast/events/constructors/device-proximity-event-constructor.html: * fast/events/constructors/error-event-constructor.html: * fast/events/constructors/event-constructors.html: * fast/events/constructors/focus-event-constructor.html: * fast/events/constructors/hash-change-event-constructor.html: * fast/events/constructors/keyboard-event-constructor.html: * fast/events/constructors/media-key-event-constructor.html: * fast/events/constructors/media-stream-event-constructor.html: * fast/events/constructors/message-event-constructor.html: * fast/events/constructors/mouse-event-constructor.html: * fast/events/constructors/overflow-event-constructor.html: * fast/events/constructors/page-transition-event-constructor.html: * fast/events/constructors/pop-state-event-constructor.html: * fast/events/constructors/progress-event-constructor.html: * fast/events/constructors/speech-recognition-error-constructor.html: * fast/events/constructors/speech-recognition-event-constructor.html: * fast/events/constructors/storage-event-constructor.html: * fast/events/constructors/track-event-constructor.html: * fast/events/constructors/transition-event-constructor.html: * fast/events/constructors/ui-event-constructor.html: * fast/events/constructors/webgl-context-event-constructor.html: * fast/events/constructors/webkit-animation-event-constructor.html: * fast/events/constructors/webkit-transition-event-constructor.html: * fast/events/constructors/wheel-event-constructor.html: * fast/events/content-changed-during-drop.html: * fast/events/context-nodrag.html: * fast/events/continuous-platform-wheelevent-in-scrolling-div.html: * fast/events/create-document-crash-on-attach-event.html: * fast/events/dispatch-event-being-dispatched.html: * fast/events/dispatch-synthetic-mouseevent.html: * fast/events/dispatch-to-function-with-handle-event.html: * fast/events/drag-and-drop-autoscroll.html: * fast/events/drag-and-drop-dataTransfer-types-nocrash.html: * fast/events/drag-and-drop-fire-drag-dragover.html: * fast/events/drag-and-drop-set-drag-data-arguments.html: * fast/events/drag-and-drop.html: * fast/events/dropzone-001.html: * fast/events/dropzone-002.html: * fast/events/dropzone-003.html: * fast/events/dropzone-004.html: * fast/events/dropzone-005.html: * fast/events/event-attribute.html: * fast/events/event-creation.html: * fast/events/event-function-toString.html: * fast/events/event-input-contentEditable.html: * fast/events/event-listener-list-mutation.html: * fast/events/event-listener-map-rehash-crash.html: * fast/events/event-listener-moving-documents.html: * fast/events/event-listener-sharing.html: * fast/events/file-input-hidden-in-ondrop.html: * fast/events/fire-mousedown-while-pressing-mouse-button.html: * fast/events/fire-popstate-event.html: * fast/events/fire-scroll-event-element.html: * fast/events/fire-scroll-event.html: * fast/events/flags-unset-on-init-event.html: * fast/events/form-iframe-target-before-load-crash.html: * fast/events/form-iframe-target-before-load-crash2.html: * fast/events/form-onchange.html: * fast/events/iframe-onmousemove.html: * fast/events/imagemap-norender-crash.html: * fast/events/init-events.html: * fast/events/inputText-never-fired-on-keydown-cancel.html: * fast/events/invalid-001.html: * fast/events/invalid-002.html: * fast/events/invalid-003.html: * fast/events/invalid-004.html: * fast/events/invalid-005.html: * fast/events/keyboardevent-location-constants.html: * fast/events/keydown-leftright-keys.html: * fast/events/keydown-numpad-keys.html: * fast/events/message-port-multi.html: * fast/events/mosuedrag-on-canvas-should-not-start-selection.html: * fast/events/mouse-click-events.html: * fast/events/mouse-cursor-change.html: * fast/events/mouse-cursor-image-set.html: * fast/events/mouse-cursor-multiframecur.html: * fast/events/mouse-cursor-no-mousemove.html: * fast/events/mouse-cursor.html: * fast/events/mouse-double-triple-click-should-not-select-next-node-for-user-select-none.html: * fast/events/mouse-focus-imagemap.html: * fast/events/mouse-relative-position.html: * fast/events/mouseout-dead-node.html: * fast/events/mouseover-button.html: * fast/events/mutation-during-append-child.html: * fast/events/mutation-during-insert-before.html: * fast/events/mutation-during-replace-child-2.html: * fast/events/mutation-during-replace-child.html: * fast/events/no-scroll-on-input-text-selection.html: * fast/events/onblur-remove.html: * fast/events/onchange-range-slider.html: * fast/events/onchange-setvalue.html: * fast/events/onchange-text-form-field.html: * fast/events/onerror-img-after-gc.html: * fast/events/onunload-back-to-page-cache.html: * fast/events/page-scaled-mouse-click-iframe.html: * fast/events/page-scaled-mouse-click.html: * fast/events/page-visibility-iframe-delete-test.html: * fast/events/page-visibility-iframe-move-test.html: * fast/events/page-visibility-iframe-propagation-test.html: * fast/events/page-visibility-null-view.html: * fast/events/page-visibility-transition-test.html: * fast/events/pagehide-timeout.html: * fast/events/pagehide-xhr-open.html: * fast/events/platform-wheelevent-in-scrolling-div.html: * fast/events/platform-wheelevent-paging-x-in-non-scrolling-div.html: * fast/events/platform-wheelevent-paging-x-in-non-scrolling-page.html: * fast/events/platform-wheelevent-paging-x-in-scrolling-div.html: * fast/events/platform-wheelevent-paging-x-in-scrolling-page.html: * fast/events/platform-wheelevent-paging-xy-in-scrolling-div.html: * fast/events/platform-wheelevent-paging-xy-in-scrolling-page.html: * fast/events/platform-wheelevent-paging-y-in-non-scrolling-div.html: * fast/events/platform-wheelevent-paging-y-in-non-scrolling-page.html: * fast/events/platform-wheelevent-paging-y-in-scrolling-div.html: * fast/events/platform-wheelevent-paging-y-in-scrolling-page.html: * fast/events/popup-allowed-from-gesture-initiated-event.html: * fast/events/popup-blocked-from-fake-button-click.html: * fast/events/popup-blocked-from-fake-focus.html: * fast/events/popup-blocked-from-fake-user-gesture.html: * fast/events/popup-blocked-from-untrusted-click-event-on-anchor.html: * fast/events/popup-blocking-timers1.html: * fast/events/popup-blocking-timers2.html: * fast/events/popup-blocking-timers3.html: * fast/events/popup-blocking-timers4.html: * fast/events/popup-blocking-timers5.html: * fast/events/popup-blocking-timers6.html: * fast/events/related-target-focusevent.html: * fast/events/resources/record-events.js: * fast/events/scale-and-scroll-body.html: * fast/events/scale-and-scroll-iframe-body.html: * fast/events/scale-and-scroll-iframe-window.html: * fast/events/scale-and-scroll-window.html: * fast/events/script-tests/TEMPLATE.html: * fast/events/scroll-after-click-on-tab-index.html: * fast/events/scroll-event-during-modal-dialog.html: * fast/events/scroll-event-phase.html: * fast/events/scroll-in-scaled-page-with-overflow-hidden.html: * fast/events/select-element.html: * fast/events/suspend-timers.html: * fast/events/tab-focus-link-in-canvas.html: * fast/events/tab-imagemap.html: * fast/events/tab-is-focusable-assert.html: * fast/events/tab-test-not-visible-imagemap.html: * fast/events/touch/basic-multi-touch-events-limited.html: * fast/events/touch/basic-multi-touch-events.html: * fast/events/touch/basic-single-touch-events.html: * fast/events/touch/create-touch-event.html: * fast/events/touch/document-create-touch-list-crash.html: * fast/events/touch/document-create-touch-list.html: * fast/events/touch/document-create-touch.html: * fast/events/touch/emulate-touch-events.html: * fast/events/touch/emulated-touch-iframe.html: * fast/events/touch/frame-hover-update.html: * fast/events/touch/gesture/context-menu-on-long-press.html: * fast/events/touch/gesture/context-menu-on-long-tap.html: * fast/events/touch/gesture/context-menu-on-two-finger-tap.html: * fast/events/touch/gesture/gesture-click.html: * fast/events/touch/gesture/gesture-dblclick.html: * fast/events/touch/gesture/gesture-scroll.html: * fast/events/touch/gesture/gesture-scrollbar.html: * fast/events/touch/gesture/gesture-tap-active-state-iframe.html: * fast/events/touch/gesture/gesture-tap-active-state.html: * fast/events/touch/gesture/gesture-tap-hover-clear.html: * fast/events/touch/gesture/gesture-tap-on-hover-element.html: * fast/events/touch/gesture/long-press-on-draggable-element-in-iframe-triggers-drag.html: * fast/events/touch/gesture/long-press-on-draggable-element-in-nested-iframes-triggers-drag.html: * fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag.html: * fast/events/touch/gesture/pad-gesture-cancel.html: * fast/events/touch/gesture/pad-gesture-fling.html: * fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html: * fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html: * fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html: * fast/events/touch/gesture/touch-gesture-noscroll-body.html: * fast/events/touch/gesture/touch-gesture-noscroll-div.html: * fast/events/touch/gesture/touch-gesture-noscroll-iframe.html: * fast/events/touch/gesture/touch-gesture-scroll-div-not-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-div-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-div-scaled.html: * fast/events/touch/gesture/touch-gesture-scroll-div-twice-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-div.html: * fast/events/touch/gesture/touch-gesture-scroll-iframe-editable.html: * fast/events/touch/gesture/touch-gesture-scroll-iframe-not-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-iframe-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-iframe.html: * fast/events/touch/gesture/touch-gesture-scroll-page-not-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-page-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-page.html: * fast/events/touch/gesture/touch-gesture-scroll-shy-target.html: * fast/events/touch/gesture/touch-gesture-scroll-sideways.html: * fast/events/touch/multi-touch-grouped-targets.html: * fast/events/touch/multi-touch-inside-iframes.html: * fast/events/touch/multi-touch-inside-nested-iframes.html: * fast/events/touch/page-scaled-touch-gesture-click.html: * fast/events/touch/script-tests/TEMPLATE.html: * fast/events/touch/send-oncancel-event.html: * fast/events/touch/tap-highlight-color.html: * fast/events/touch/touch-active-state.html: * fast/events/touch/touch-before-pressing-spin-button.html: * fast/events/touch/touch-coords-in-zoom-and-scroll.html: * fast/events/touch/touch-handler-count.html: * fast/events/touch/touch-input-element-change-documents.html: * fast/events/touch/touch-inside-iframe-scrolled.html: * fast/events/touch/touch-inside-iframe.html: * fast/events/touch/touch-scaled-scrolled.html: * fast/events/touch/touch-slider-no-js-touch-listener.html: * fast/events/touch/touch-slider.html: * fast/events/touch/touch-stale-node-crash.html: * fast/events/touch/touch-target-limited.html: * fast/events/touch/touch-target.html: * fast/events/wheelevent-basic.html: * fast/events/wheelevent-constructor.html: * fast/events/wheelevent-direction-inverted-from-device.html: * fast/events/wheelevent-in-horizontal-scrollbar-in-rtl.html: * fast/events/wheelevent-in-scrolling-div.html: * fast/events/wheelevent-in-text-node.html: * fast/events/wheelevent-in-vertical-scrollbar-in-rtl.html: * fast/events/wheelevent-mousewheel-interaction.html: * fast/events/zoom-dblclick.html: * fast/exclusions/css-exclusions-disabled.html: * fast/exclusions/css-exclusions-enabled.html: * fast/exclusions/parsing/parsing-wrap-flow.html: * fast/exclusions/parsing/parsing-wrap-through.html: Canonical link: https://commits.webkit.org/138871@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@155267 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-09-07 23:07:25 +00:00
<script src="../../resources/js-test-pre.js"></script>
Add the event handler content attributes that are defined in the spec to HTMLElement https://bugs.webkit.org/show_bug.cgi?id=86363 Reviewed by Ryosuke Niwa. Source/WebCore: Test: fast/events/event-attribute.html We are missing some event handler content attributes from HTMLElement that are defined in the spec. http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#event-handlers-on-elements,-document-objects,-and-window-objects * html/HTMLElement.cpp: (WebCore::HTMLElement::eventNameForAttributeName): Returns event name for a given attribute name by looking it up on a HashMap. (WebCore::HTMLElement::parseAttribute): Sets up event listeners for content attributes. * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::parseAttribute): Removed event listener content attributes that was added to HTMLElement. * html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::parseAttribute): Ditto. * html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::parseAttribute): Ditto. * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::parseAttribute): Ditto. * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::parseAttribute): Ditto. * html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::parseAttribute): Ditto. * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseAttribute): Ditto. * html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::parseAttribute): Ditto. * html/HTMLTextFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::parseAttribute): Ditto. * html/HTMLTrackElement.cpp: (WebCore::HTMLTrackElement::parseAttribute): Ditto. LayoutTests: * fast/events/event-attribute-expected.txt: Added. * fast/events/event-attribute.html: Added. Tests that setting attribute creates event listeners. * fast/events/form-onchange-expected.txt: Added. * fast/events/form-onchange.html: Added. Test for Bug 24516. Canonical link: https://commits.webkit.org/131920@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@147205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-03-29 09:59:09 +00:00
</head>
<body>
<p id="description"></p>
<div id="console"></div>
<input onbeforeload="1" onabort="1">
<script src="resources/shouldnotexecute.js" onbeforeload="debug('cancelled onbeforeload async'); return false;" async></script>
<script>
description('Test that setting event handlers with attribute works.');
var elementTags = ["img", "script", "video", "div", "form", "input"];
var eventNames = ["onclick", "oncontextmenu", "ondblclick", "onmousedown",
"onmousemove", "onmouseout", "onmouseover", "onmouseup", "onmousewheel",
"onfocus", "onblur", "onkeydown", "onkeypress", "onkeyup", "onscroll",
"onbeforecut", "oncut", "onbeforecopy", "oncopy", "onbeforepaste", "onpaste",
"ondragenter", "ondragover", "ondragleave", "ondrop", "ondragstart", "ondrag",
"ondragend", "onselectstart", "onsubmit", "onerror", "oninput", "oninvalid",
"ontouchstart", "ontouchmove", "ontouchend", "ontouchcancel",
"onwebkitfullscreenchange", "onwebkitfullscreenerror", "onabort", "onchange",
"onreset", "onselect", "onload"];
for (var i = 0; i < elementTags.length; i++) {
var element = document.createElement(elementTags[i]);
for (var j = 0; j < eventNames.length; j++) {
element.setAttribute(eventNames[j], "1");
shouldBe('/*' + elementTags[i] + '*/ typeof (element["' + eventNames[j] + '"])', '"function"');
}
}
</script>
Change fast/e* files to use pre and post js files in LayoutTests/resources. https://bugs.webkit.org/show_bug.cgi?id=120975. Rubber stamped by Filip Pizlo. * fast/encoding/char-decoding-mac.html: * fast/encoding/char-decoding.html: * fast/encoding/char-encoding-mac.html: * fast/encoding/char-encoding.html: * fast/encoding/idn-security.html: * fast/encoding/invalid-xml.html: * fast/encoding/resources/invalid-xml.js: (runNextTest): * fast/events/autoscroll-in-overflow-hidden-html.html: * fast/events/autoscroll-should-not-stop-on-keypress.html: * fast/events/blur-focus-window-should-blur-focus-element.html: * fast/events/bogus-dropEffect-effectAllowed.html: * fast/events/caller-access-from-event-listener.html: * fast/events/check-defocus-event-order-when-triggered-by-mouse-click.html: * fast/events/check-defocus-event-order-when-triggered-by-tab.html: * fast/events/click-focus-control.html: * fast/events/click-range-slider.html: * fast/events/clientXY-in-zoom-and-scroll.html: * fast/events/constructors/before-load-event-constructor.html: * fast/events/constructors/close-event-constructor.html: * fast/events/constructors/composition-event-constructor.html: * fast/events/constructors/custom-event-constructor.html: * fast/events/constructors/device-proximity-event-constructor.html: * fast/events/constructors/error-event-constructor.html: * fast/events/constructors/event-constructors.html: * fast/events/constructors/focus-event-constructor.html: * fast/events/constructors/hash-change-event-constructor.html: * fast/events/constructors/keyboard-event-constructor.html: * fast/events/constructors/media-key-event-constructor.html: * fast/events/constructors/media-stream-event-constructor.html: * fast/events/constructors/message-event-constructor.html: * fast/events/constructors/mouse-event-constructor.html: * fast/events/constructors/overflow-event-constructor.html: * fast/events/constructors/page-transition-event-constructor.html: * fast/events/constructors/pop-state-event-constructor.html: * fast/events/constructors/progress-event-constructor.html: * fast/events/constructors/speech-recognition-error-constructor.html: * fast/events/constructors/speech-recognition-event-constructor.html: * fast/events/constructors/storage-event-constructor.html: * fast/events/constructors/track-event-constructor.html: * fast/events/constructors/transition-event-constructor.html: * fast/events/constructors/ui-event-constructor.html: * fast/events/constructors/webgl-context-event-constructor.html: * fast/events/constructors/webkit-animation-event-constructor.html: * fast/events/constructors/webkit-transition-event-constructor.html: * fast/events/constructors/wheel-event-constructor.html: * fast/events/content-changed-during-drop.html: * fast/events/context-nodrag.html: * fast/events/continuous-platform-wheelevent-in-scrolling-div.html: * fast/events/create-document-crash-on-attach-event.html: * fast/events/dispatch-event-being-dispatched.html: * fast/events/dispatch-synthetic-mouseevent.html: * fast/events/dispatch-to-function-with-handle-event.html: * fast/events/drag-and-drop-autoscroll.html: * fast/events/drag-and-drop-dataTransfer-types-nocrash.html: * fast/events/drag-and-drop-fire-drag-dragover.html: * fast/events/drag-and-drop-set-drag-data-arguments.html: * fast/events/drag-and-drop.html: * fast/events/dropzone-001.html: * fast/events/dropzone-002.html: * fast/events/dropzone-003.html: * fast/events/dropzone-004.html: * fast/events/dropzone-005.html: * fast/events/event-attribute.html: * fast/events/event-creation.html: * fast/events/event-function-toString.html: * fast/events/event-input-contentEditable.html: * fast/events/event-listener-list-mutation.html: * fast/events/event-listener-map-rehash-crash.html: * fast/events/event-listener-moving-documents.html: * fast/events/event-listener-sharing.html: * fast/events/file-input-hidden-in-ondrop.html: * fast/events/fire-mousedown-while-pressing-mouse-button.html: * fast/events/fire-popstate-event.html: * fast/events/fire-scroll-event-element.html: * fast/events/fire-scroll-event.html: * fast/events/flags-unset-on-init-event.html: * fast/events/form-iframe-target-before-load-crash.html: * fast/events/form-iframe-target-before-load-crash2.html: * fast/events/form-onchange.html: * fast/events/iframe-onmousemove.html: * fast/events/imagemap-norender-crash.html: * fast/events/init-events.html: * fast/events/inputText-never-fired-on-keydown-cancel.html: * fast/events/invalid-001.html: * fast/events/invalid-002.html: * fast/events/invalid-003.html: * fast/events/invalid-004.html: * fast/events/invalid-005.html: * fast/events/keyboardevent-location-constants.html: * fast/events/keydown-leftright-keys.html: * fast/events/keydown-numpad-keys.html: * fast/events/message-port-multi.html: * fast/events/mosuedrag-on-canvas-should-not-start-selection.html: * fast/events/mouse-click-events.html: * fast/events/mouse-cursor-change.html: * fast/events/mouse-cursor-image-set.html: * fast/events/mouse-cursor-multiframecur.html: * fast/events/mouse-cursor-no-mousemove.html: * fast/events/mouse-cursor.html: * fast/events/mouse-double-triple-click-should-not-select-next-node-for-user-select-none.html: * fast/events/mouse-focus-imagemap.html: * fast/events/mouse-relative-position.html: * fast/events/mouseout-dead-node.html: * fast/events/mouseover-button.html: * fast/events/mutation-during-append-child.html: * fast/events/mutation-during-insert-before.html: * fast/events/mutation-during-replace-child-2.html: * fast/events/mutation-during-replace-child.html: * fast/events/no-scroll-on-input-text-selection.html: * fast/events/onblur-remove.html: * fast/events/onchange-range-slider.html: * fast/events/onchange-setvalue.html: * fast/events/onchange-text-form-field.html: * fast/events/onerror-img-after-gc.html: * fast/events/onunload-back-to-page-cache.html: * fast/events/page-scaled-mouse-click-iframe.html: * fast/events/page-scaled-mouse-click.html: * fast/events/page-visibility-iframe-delete-test.html: * fast/events/page-visibility-iframe-move-test.html: * fast/events/page-visibility-iframe-propagation-test.html: * fast/events/page-visibility-null-view.html: * fast/events/page-visibility-transition-test.html: * fast/events/pagehide-timeout.html: * fast/events/pagehide-xhr-open.html: * fast/events/platform-wheelevent-in-scrolling-div.html: * fast/events/platform-wheelevent-paging-x-in-non-scrolling-div.html: * fast/events/platform-wheelevent-paging-x-in-non-scrolling-page.html: * fast/events/platform-wheelevent-paging-x-in-scrolling-div.html: * fast/events/platform-wheelevent-paging-x-in-scrolling-page.html: * fast/events/platform-wheelevent-paging-xy-in-scrolling-div.html: * fast/events/platform-wheelevent-paging-xy-in-scrolling-page.html: * fast/events/platform-wheelevent-paging-y-in-non-scrolling-div.html: * fast/events/platform-wheelevent-paging-y-in-non-scrolling-page.html: * fast/events/platform-wheelevent-paging-y-in-scrolling-div.html: * fast/events/platform-wheelevent-paging-y-in-scrolling-page.html: * fast/events/popup-allowed-from-gesture-initiated-event.html: * fast/events/popup-blocked-from-fake-button-click.html: * fast/events/popup-blocked-from-fake-focus.html: * fast/events/popup-blocked-from-fake-user-gesture.html: * fast/events/popup-blocked-from-untrusted-click-event-on-anchor.html: * fast/events/popup-blocking-timers1.html: * fast/events/popup-blocking-timers2.html: * fast/events/popup-blocking-timers3.html: * fast/events/popup-blocking-timers4.html: * fast/events/popup-blocking-timers5.html: * fast/events/popup-blocking-timers6.html: * fast/events/related-target-focusevent.html: * fast/events/resources/record-events.js: * fast/events/scale-and-scroll-body.html: * fast/events/scale-and-scroll-iframe-body.html: * fast/events/scale-and-scroll-iframe-window.html: * fast/events/scale-and-scroll-window.html: * fast/events/script-tests/TEMPLATE.html: * fast/events/scroll-after-click-on-tab-index.html: * fast/events/scroll-event-during-modal-dialog.html: * fast/events/scroll-event-phase.html: * fast/events/scroll-in-scaled-page-with-overflow-hidden.html: * fast/events/select-element.html: * fast/events/suspend-timers.html: * fast/events/tab-focus-link-in-canvas.html: * fast/events/tab-imagemap.html: * fast/events/tab-is-focusable-assert.html: * fast/events/tab-test-not-visible-imagemap.html: * fast/events/touch/basic-multi-touch-events-limited.html: * fast/events/touch/basic-multi-touch-events.html: * fast/events/touch/basic-single-touch-events.html: * fast/events/touch/create-touch-event.html: * fast/events/touch/document-create-touch-list-crash.html: * fast/events/touch/document-create-touch-list.html: * fast/events/touch/document-create-touch.html: * fast/events/touch/emulate-touch-events.html: * fast/events/touch/emulated-touch-iframe.html: * fast/events/touch/frame-hover-update.html: * fast/events/touch/gesture/context-menu-on-long-press.html: * fast/events/touch/gesture/context-menu-on-long-tap.html: * fast/events/touch/gesture/context-menu-on-two-finger-tap.html: * fast/events/touch/gesture/gesture-click.html: * fast/events/touch/gesture/gesture-dblclick.html: * fast/events/touch/gesture/gesture-scroll.html: * fast/events/touch/gesture/gesture-scrollbar.html: * fast/events/touch/gesture/gesture-tap-active-state-iframe.html: * fast/events/touch/gesture/gesture-tap-active-state.html: * fast/events/touch/gesture/gesture-tap-hover-clear.html: * fast/events/touch/gesture/gesture-tap-on-hover-element.html: * fast/events/touch/gesture/long-press-on-draggable-element-in-iframe-triggers-drag.html: * fast/events/touch/gesture/long-press-on-draggable-element-in-nested-iframes-triggers-drag.html: * fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag.html: * fast/events/touch/gesture/pad-gesture-cancel.html: * fast/events/touch/gesture/pad-gesture-fling.html: * fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html: * fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html: * fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html: * fast/events/touch/gesture/touch-gesture-noscroll-body.html: * fast/events/touch/gesture/touch-gesture-noscroll-div.html: * fast/events/touch/gesture/touch-gesture-noscroll-iframe.html: * fast/events/touch/gesture/touch-gesture-scroll-div-not-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-div-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-div-scaled.html: * fast/events/touch/gesture/touch-gesture-scroll-div-twice-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-div.html: * fast/events/touch/gesture/touch-gesture-scroll-iframe-editable.html: * fast/events/touch/gesture/touch-gesture-scroll-iframe-not-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-iframe-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-iframe.html: * fast/events/touch/gesture/touch-gesture-scroll-page-not-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-page-propagated.html: * fast/events/touch/gesture/touch-gesture-scroll-page.html: * fast/events/touch/gesture/touch-gesture-scroll-shy-target.html: * fast/events/touch/gesture/touch-gesture-scroll-sideways.html: * fast/events/touch/multi-touch-grouped-targets.html: * fast/events/touch/multi-touch-inside-iframes.html: * fast/events/touch/multi-touch-inside-nested-iframes.html: * fast/events/touch/page-scaled-touch-gesture-click.html: * fast/events/touch/script-tests/TEMPLATE.html: * fast/events/touch/send-oncancel-event.html: * fast/events/touch/tap-highlight-color.html: * fast/events/touch/touch-active-state.html: * fast/events/touch/touch-before-pressing-spin-button.html: * fast/events/touch/touch-coords-in-zoom-and-scroll.html: * fast/events/touch/touch-handler-count.html: * fast/events/touch/touch-input-element-change-documents.html: * fast/events/touch/touch-inside-iframe-scrolled.html: * fast/events/touch/touch-inside-iframe.html: * fast/events/touch/touch-scaled-scrolled.html: * fast/events/touch/touch-slider-no-js-touch-listener.html: * fast/events/touch/touch-slider.html: * fast/events/touch/touch-stale-node-crash.html: * fast/events/touch/touch-target-limited.html: * fast/events/touch/touch-target.html: * fast/events/wheelevent-basic.html: * fast/events/wheelevent-constructor.html: * fast/events/wheelevent-direction-inverted-from-device.html: * fast/events/wheelevent-in-horizontal-scrollbar-in-rtl.html: * fast/events/wheelevent-in-scrolling-div.html: * fast/events/wheelevent-in-text-node.html: * fast/events/wheelevent-in-vertical-scrollbar-in-rtl.html: * fast/events/wheelevent-mousewheel-interaction.html: * fast/events/zoom-dblclick.html: * fast/exclusions/css-exclusions-disabled.html: * fast/exclusions/css-exclusions-enabled.html: * fast/exclusions/parsing/parsing-wrap-flow.html: * fast/exclusions/parsing/parsing-wrap-through.html: Canonical link: https://commits.webkit.org/138871@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@155267 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-09-07 23:07:25 +00:00
<script src="../../resources/js-test-post.js"></script>
Add the event handler content attributes that are defined in the spec to HTMLElement https://bugs.webkit.org/show_bug.cgi?id=86363 Reviewed by Ryosuke Niwa. Source/WebCore: Test: fast/events/event-attribute.html We are missing some event handler content attributes from HTMLElement that are defined in the spec. http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#event-handlers-on-elements,-document-objects,-and-window-objects * html/HTMLElement.cpp: (WebCore::HTMLElement::eventNameForAttributeName): Returns event name for a given attribute name by looking it up on a HashMap. (WebCore::HTMLElement::parseAttribute): Sets up event listeners for content attributes. * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::parseAttribute): Removed event listener content attributes that was added to HTMLElement. * html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::parseAttribute): Ditto. * html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::parseAttribute): Ditto. * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::parseAttribute): Ditto. * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::parseAttribute): Ditto. * html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::parseAttribute): Ditto. * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseAttribute): Ditto. * html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::parseAttribute): Ditto. * html/HTMLTextFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::parseAttribute): Ditto. * html/HTMLTrackElement.cpp: (WebCore::HTMLTrackElement::parseAttribute): Ditto. LayoutTests: * fast/events/event-attribute-expected.txt: Added. * fast/events/event-attribute.html: Added. Tests that setting attribute creates event listeners. * fast/events/form-onchange-expected.txt: Added. * fast/events/form-onchange.html: Added. Test for Bug 24516. Canonical link: https://commits.webkit.org/131920@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@147205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-03-29 09:59:09 +00:00
</body>
</html>