-
commit-queue@webkit.org authored
Reviewed by Kent Tamura. Implement onformchange and onforminput event handlers https://bugs.webkit.org/show_bug.cgi?id=26141 * fast/dom/Window/window-properties-expected.txt: Added form events. * fast/dom/Window/window-property-descriptors-expected.txt: Added form events. * fast/forms/formchange-event-expected.txt: Added. * fast/forms/formchange-event.html: Added to test formchange events. * fast/forms/forminput-event-expected.txt: Added. * fast/forms/forminput-event.html: Added to test forminput events. * fast/forms/script-tests/formchange-event.js: Added. (sendKey): (sendText): * fast/forms/script-tests/forminput-event.js: Added. (sendKey): (sendText): 2011-01-19 Dai Mikurube <dmikurube@google.com> Reviewed by Kent Tamura. Implement onformchange and onforminput event handlers https://bugs.webkit.org/show_bug.cgi?id=26141 Tests: fast/forms/formchange-event.html fast/forms/forminput-event.html * bindings/scripts/CodeGeneratorGObject.pm: Added event names. * dom/Document.h: Added event definitions. * dom/Document.idl: Added event definitions. * dom/Element.h: Added event definitions. * dom/Element.idl: Added event definitions. * dom/Event.cpp: (WebCore::Event::fromUserGesture): Added a condition for a formchange event in handling user gestures. * dom/EventNames.h: Added event definitions. * dom/InputElement.cpp: (WebCore::InputElement::setValueFromRenderer): Replaced a direct dispatchEvent() call into dispatchInputEvents(), a virtual function which broadcasts forminput events for HTML elements. * dom/Node.cpp: (WebCore::Node::dispatchInputEvents): Defined basic dispatchInputEvents() described above. (WebCore::Node::dispatchChangeEvents): Defined basic dispatchChangeEvents() described above. (WebCore::Node::defaultEventHandler): Replaced a direct dispatchEvent() call into dispatchInputEvents(). * dom/Node.h: * html/FormAssociatedElement.h: Added isResettable() to check the element is resettable or not. * html/HTMLAttributeNames.in: Added event names. * html/HTMLElement.cpp: (WebCore::HTMLElement::parseMappedAttribute): Added event handling. (WebCore::HTMLElement::shadowAncestorOwnerForm): Added to get an ancestor <form> element from a shadow element. (WebCore::HTMLElement::dispatchChangeEvents): Defined dispatchChangeEvents() for HTML elements described above. (WebCore::HTMLElement::dispatchInputEvents): Defined dispatchInputEvents() for HTML elements described above. * html/HTMLElement.h: * html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::dispatchFormControlChangeEvent): Added calling dispatchFormChange() to broadcast formchange events. (WebCore::HTMLFormControlElement::dispatchFormControlInputEvent): Defined newly to dispatch an input event with broadcasting forminput events. * html/HTMLFormControlElement.h: Added isResettable(). * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::broadcastFormEvent): Added to broadcast forminput or formchange events. (WebCore::HTMLFormElement::dispatchFormInput): Defined newly to broadcast forminput events. (WebCore::HTMLFormElement::dispatchFormChange): Defined newly to broadcast formchange events. * html/HTMLFormElement.h: * html/HTMLFormElement.idl: Added dispatchFormInput() and dispatchFormChange() DOM API definitions. * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::stepUpFromRenderer): Replaced a direct dispatchEvent() call into dispatchInputEvents(). * html/HTMLInputElement.h: Added isResettable(). * html/HTMLKeygenElement.h: Added isResettable(). * html/HTMLObjectElement.h: Added isResettable(). * html/HTMLOutputElement.h: Added isResettable(). * html/HTMLSelectElement.h: Added isResettable(). * html/HTMLTextAreaElement.h: Added isResettable(). * page/DOMWindow.h: Added event definitions. * page/DOMWindow.idl: Added event definitions. * rendering/TextControlInnerElements.cpp: (WebCore::SearchFieldCancelButtonElement::defaultEventHandler): Replaced a direct dispatchEvent() call into dispatchInputEvents(). git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76115 268f45cc-cd09-0410-ab3c-d52691b4dbfc
17a43873