Commit 56e37de8 authored by darin@apple.com's avatar darin@apple.com

WebCore:

2009-01-05  Darin Adler  <darin@apple.com>

        Reviewed by Anders Carlsson.

        Bug 23104: minor mistakes in init functions for animation and transition events
        https://bugs.webkit.org/show_bug.cgi?id=23104

        Test: fast/events/init-events.html

        Also fixed two StorageEvent problems the test case uncovered:

            Made document.createEvent("StorageEvent") work.
            Allow null values for StorageEvent.oldValue and StorageEvent.newValue.

        * dom/Document.cpp:
        (WebCore::Document::createEvent): Sorted alphabetically by the name of the event
        class. Added StorageEvent.

        * dom/UIEvent.idl: Fixed typo in a comment.

        * dom/WebKitAnimationEvent.cpp:
        (WebCore::WebKitAnimationEvent::initWebKitAnimationEvent): Use all the arguments.
        * dom/WebKitTransitionEvent.cpp:
        (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent): Ditto.

        * storage/StorageEvent.idl: Use the ConvertNullToNullString keyword on the
        arguments to initStorageEvent so it can create events with null values for the
        oldValue and newValue, just like the real storage events. Note that the properties
        already had ConvertNullStringTo=Null, so this is just the other half of that.

LayoutTests:

2009-01-05  Darin Adler  <darin@apple.com>

        Reviewed by Anders Carlsson.

        Bug 23104: minor mistakes in init functions for animation and transition events
        https://bugs.webkit.org/show_bug.cgi?id=23104

        * fast/events/init-events-expected.txt: Added.
        * fast/events/init-events.html: Added.
        * fast/events/resources/init-events.js: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39602 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 98a7ac69
2009-01-05 Darin Adler <darin@apple.com>
Reviewed by Anders Carlsson.
Bug 23104: minor mistakes in init functions for animation and transition events
https://bugs.webkit.org/show_bug.cgi?id=23104
* fast/events/init-events-expected.txt: Added.
* fast/events/init-events.html: Added.
* fast/events/resources/init-events.js: Added.
2009-01-04 Darin Adler <darin@apple.com>
Reviewed by Oliver Hunt.
......
This tests the init functions for all the event DOM classes that have them.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
PASS testInitEvent('', '"a", false, false').type is 'a'
PASS testInitEvent('', 'null, false, false').type is 'null'
PASS testInitEvent('', '"a", false, false').bubbles is false
PASS testInitEvent('', '"a", true, false').bubbles is true
PASS testInitEvent('', '"a", false, false').cancelable is false
PASS testInitEvent('', '"a", false, true').cancelable is true
PASS testInitEvent('Keyboard', '"a", false, false, window, "b", 1001, false, false, false, false, false').type is 'a'
PASS testInitEvent('Keyboard', 'null, false, false, window, "b", 1001, false, false, false, false, false').type is 'null'
PASS testInitEvent('Keyboard', '"a", false, false, window, "b", 1001, false, false, false, false, false').bubbles is false
PASS testInitEvent('Keyboard', '"a", true, false, window, "b", 1001, false, false, false, false, false').bubbles is true
PASS testInitEvent('Keyboard', '"a", false, false, window, "b", 1001, false, false, false, false, false').cancelable is false
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').cancelable is true
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').view is window
PASS testInitEvent('Keyboard', '"a", false, true, null, "b", 1001, false, false, false, false, false').view is null
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').keyIdentifier is 'b'
PASS testInitEvent('Keyboard', '"a", false, true, window, null, 1001, false, false, false, false, false').keyIdentifier is 'null'
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').keyLocation is 1001
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').ctrlKey is false
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, true, false, false, false, false').ctrlKey is true
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').altKey is false
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, true, false, false, false').altKey is true
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').shiftKey is false
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, true, false, false').shiftKey is true
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').metaKey is false
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, true, false').metaKey is true
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').altGraphKey is false
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, true').altGraphKey is true
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, true').detail is 0
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').keyCode is 0
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').charCode is 0
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').layerX is 0
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').layerY is 0
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').pageX is 0
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').pageY is 0
PASS testInitEvent('Keyboard', '"a", false, true, window, "b", 1001, false, false, false, false, false').which is 0
PASS testInitEvent('Message', '"a", false, false, "b", "c", "d", window, null').type is 'a'
PASS testInitEvent('Message', 'null, false, false, "b", "c", "d", window, null').type is 'null'
PASS testInitEvent('Message', '"a", false, false, "b", "c", "d", window, null').bubbles is false
PASS testInitEvent('Message', '"a", true, false, "b", "c", "d", window, null').bubbles is true
PASS testInitEvent('Message', '"a", false, false, "b", "c", "d", window, null').cancelable is false
PASS testInitEvent('Message', '"a", false, true, "b", "c", "d", window, null').cancelable is true
PASS testInitEvent('Message', '"a", false, false, "b", "c", "d", window, null').data is 'b'
PASS testInitEvent('Message', '"a", false, false, null, "c", "d", window, null').data is 'null'
PASS testInitEvent('Message', '"a", false, false, "b", "c", "d", window, null').origin is 'c'
PASS testInitEvent('Message', '"a", false, false, "b", null, "d", window, null').origin is 'null'
PASS testInitEvent('Message', '"a", false, false, "b", "c", "d", window, null').lastEventId is 'd'
PASS testInitEvent('Message', '"a", false, false, "b", "c", null, window, null').lastEventId is 'null'
PASS testInitEvent('Message', '"a", false, false, "b", "c", "d", window, null').source is window
PASS testInitEvent('Message', '"a", false, false, "b", "c", "d", null, null').source is null
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').type is 'a'
PASS testInitEvent('Mouse', 'null, false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').type is 'null'
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').bubbles is false
PASS testInitEvent('Mouse', '"a", true, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').bubbles is true
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').cancelable is false
PASS testInitEvent('Mouse', '"a", false, true, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').cancelable is true
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').view is window
PASS testInitEvent('Mouse', '"a", false, false, null, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').view is null
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').detail is 1001
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').screenX is 1002
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').screenY is 1003
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').clientX is 1004
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').clientY is 1005
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').ctrlKey is false
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, true, false, false, false, 1006, null').ctrlKey is true
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').altKey is false
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, true, false, false, 1006, null').altKey is true
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').shiftKey is false
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, true, false, 1006, null').shiftKey is true
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').metaKey is false
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, true, 1006, null').metaKey is true
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').button is 1006
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').relatedTarget is null
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, document').relatedTarget is document
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').offsetX is 1004
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').offsetY is 1005
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').x is 1004
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').y is 1005
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').fromElement is null
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, document').fromElement is document
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').toElement is null
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').dataTransfer is null
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').keyCode is 0
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').charCode is 0
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').layerX is 1004
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').layerY is 1005
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').pageX is 1004
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').pageY is 1005
PASS testInitEvent('Mouse', '"a", false, false, window, 1001, 1002, 1003, 1004, 1005, false, false, false, false, 1006, null').which is 1007
PASS testInitEvent('Mutation', '"a", false, false, null, "b", "c", "d", 1001').type is 'a'
PASS testInitEvent('Mutation', 'null, false, false, null, "b", "c", "d", 1001').type is 'null'
PASS testInitEvent('Mutation', '"a", false, false, null, "b", "c", "d", 1001').bubbles is false
PASS testInitEvent('Mutation', '"a", true, false, null, "b", "c", "d", 1001').bubbles is true
PASS testInitEvent('Mutation', '"a", false, false, null, "b", "c", "d", 1001').cancelable is false
PASS testInitEvent('Mutation', '"a", false, true, null, "b", "c", "d", 1001').cancelable is true
PASS testInitEvent('Mutation', '"a", false, false, null, "b", "c", "d", 1001').relatedNode is null
PASS testInitEvent('Mutation', '"a", false, false, document, "b", "c", "d", 1001').relatedNode is document
PASS testInitEvent('Mutation', '"a", false, false, null, "b", "c", "d", 1001').prevValue is 'b'
PASS testInitEvent('Mutation', '"a", false, false, null, null, "c", "d", 1001').prevValue is 'null'
PASS testInitEvent('Mutation', '"a", false, false, null, "b", "c", "d", 1001').newValue is 'c'
PASS testInitEvent('Mutation', '"a", false, false, null, "b", null, "d", 1001').newValue is 'null'
PASS testInitEvent('Mutation', '"a", false, false, null, "b", "c", "d", 1001').attrName is 'd'
PASS testInitEvent('Mutation', '"a", false, false, null, "b", "c", null, 1001').attrName is 'null'
PASS testInitEvent('Mutation', '"a", false, false, null, "b", "c", "d", 1001').attrChange is 1001
PASS testInitEvent('Overflow', '1001, false, false').type is 'overflowchanged'
PASS testInitEvent('Overflow', '1001, false, false').bubbles is false
PASS testInitEvent('Overflow', '1001, false, false').cancelable is false
PASS testInitEvent('Overflow', '1001, false, false').orient is 1001
PASS testInitEvent('Overflow', '1001, false, false').horizontalOverflow is false
PASS testInitEvent('Overflow', '1001, true, false').horizontalOverflow is true
PASS testInitEvent('Overflow', '1001, false, false').verticalOverflow is false
PASS testInitEvent('Overflow', '1001, false, true').verticalOverflow is true
PASS testInitEvent('Progress', '"a", false, false, false, 1001, 1002').type is 'a'
PASS testInitEvent('Progress', 'null, false, false, false, 1001, 1002').type is 'null'
PASS testInitEvent('Progress', '"a", false, false, false, 1001, 1002').bubbles is false
PASS testInitEvent('Progress', '"a", true, false, false, 1001, 1002').bubbles is true
PASS testInitEvent('Progress', '"a", false, false, false, 1001, 1002').cancelable is false
PASS testInitEvent('Progress', '"a", false, true, false, 1001, 1002').cancelable is true
PASS testInitEvent('Progress', '"a", false, false, false, 1001, 1002').lengthComputable is false
PASS testInitEvent('Progress', '"a", false, false, true, 1001, 1002').lengthComputable is true
PASS testInitEvent('Progress', '"a", false, false, false, 1001, 1002').loaded is 1001
PASS testInitEvent('Progress', '"a", false, false, false, 1001, 1002').total is 1002
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", "e", window').type is 'a'
PASS testInitEvent('Storage', 'null, false, false, "b", "c", "d", "e", window').type is 'null'
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", "e", window').bubbles is false
PASS testInitEvent('Storage', '"a", true, false, "b", "c", "d", "e", window').bubbles is true
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", "e", window').cancelable is false
PASS testInitEvent('Storage', '"a", false, true, "b", "c", "d", "e", window').cancelable is true
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", "e", window').key is 'b'
PASS testInitEvent('Storage', '"a", false, false, null, "c", "d", "e", window').key is 'null'
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", "e", window').oldValue is 'c'
PASS testInitEvent('Storage', '"a", false, false, "b", null, "d", "e", window').oldValue is null
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", "e", window').newValue is 'd'
PASS testInitEvent('Storage', '"a", false, false, "b", "c", null, "e", window').newValue is null
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", "e", window').uri is 'e'
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", null, window').uri is 'null'
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", "e", window').source is window
PASS testInitEvent('Storage', '"a", false, false, "b", "c", "d", "e", null').source is null
PASS testInitEvent('Text', '"a", false, false, window, "b"').type is 'a'
PASS testInitEvent('Text', 'null, false, false, window, "b"').type is 'null'
PASS testInitEvent('Text', '"a", false, false, window, "b"').bubbles is false
PASS testInitEvent('Text', '"a", true, false, window, "b"').bubbles is true
PASS testInitEvent('Text', '"a", false, false, window, "b"').cancelable is false
PASS testInitEvent('Text', '"a", false, true, window, "b"').cancelable is true
PASS testInitEvent('Text', '"a", false, false, window, "b"').view is window
PASS testInitEvent('Text', '"a", false, false, null, "b"').view is null
PASS testInitEvent('Text', '"a", false, false, window, "b"').data is 'b'
PASS testInitEvent('Text', '"a", false, false, window, null').data is 'null'
PASS testInitEvent('Text', '"a", false, false, window, "b"').detail is 0
PASS testInitEvent('Text', '"a", false, false, window, "b"').keyCode is 0
PASS testInitEvent('Text', '"a", false, false, window, "b"').charCode is 0
PASS testInitEvent('Text', '"a", false, false, window, "b"').layerX is 0
PASS testInitEvent('Text', '"a", false, false, window, "b"').layerY is 0
PASS testInitEvent('Text', '"a", false, false, window, "b"').pageX is 0
PASS testInitEvent('Text', '"a", false, false, window, "b"').pageY is 0
PASS testInitEvent('Text', '"a", false, false, window, "b"').which is 0
PASS testInitEvent('UI', '"a", false, false, window, 1001').type is 'a'
PASS testInitEvent('UI', 'null, false, false, window, 1001').type is 'null'
PASS testInitEvent('UI', '"a", false, false, window, 1001').bubbles is false
PASS testInitEvent('UI', '"a", true, false, window, 1001').bubbles is true
PASS testInitEvent('UI', '"a", false, false, window, 1001').cancelable is false
PASS testInitEvent('UI', '"a", false, true, window, 1001').cancelable is true
PASS testInitEvent('UI', '"a", false, false, window, 1001').view is window
PASS testInitEvent('UI', '"a", false, false, null, 1001').view is null
PASS testInitEvent('UI', '"a", false, false, window, 1001').detail is 1001
PASS testInitEvent('UI', '"a", false, false, window, 1001').keyCode is 0
PASS testInitEvent('UI', '"a", false, false, window, 1001').charCode is 0
PASS testInitEvent('UI', '"a", false, false, window, 1001').layerX is 0
PASS testInitEvent('UI', '"a", false, false, window, 1001').layerY is 0
PASS testInitEvent('UI', '"a", false, false, window, 1001').pageX is 0
PASS testInitEvent('UI', '"a", false, false, window, 1001').pageY is 0
PASS testInitEvent('UI', '"a", false, false, window, 1001').which is 0
PASS testInitEvent('WebKitAnimation', '"a", false, false, "b", 1001').type is 'a'
PASS testInitEvent('WebKitAnimation', 'null, false, false, "b", 1001').type is 'null'
PASS testInitEvent('WebKitAnimation', '"a", false, false, "b", 1001').bubbles is false
PASS testInitEvent('WebKitAnimation', '"a", true, false, "b", 1001').bubbles is true
PASS testInitEvent('WebKitAnimation', '"a", false, false, "b", 1001').cancelable is false
PASS testInitEvent('WebKitAnimation', '"a", false, true, "b", 1001').cancelable is true
PASS testInitEvent('WebKitAnimation', '"a", false, false, "b", 1001').animationName is 'b'
PASS testInitEvent('WebKitAnimation', '"a", false, false, null, 1001').animationName is 'null'
PASS testInitEvent('WebKitAnimation', '"a", false, false, "b", 1001').elapsedTime is 1001
PASS testInitEvent('WebKitTransition', '"a", false, false, "b", 1001').type is 'a'
PASS testInitEvent('WebKitTransition', 'null, false, false, "b", 1001').type is 'null'
PASS testInitEvent('WebKitTransition', '"a", false, false, "b", 1001').bubbles is false
PASS testInitEvent('WebKitTransition', '"a", true, false, "b", 1001').bubbles is true
PASS testInitEvent('WebKitTransition', '"a", false, false, "b", 1001').cancelable is false
PASS testInitEvent('WebKitTransition', '"a", false, true, "b", 1001').cancelable is true
PASS testInitEvent('WebKitTransition', '"a", false, false, "b", 1001').propertyName is 'b'
PASS testInitEvent('WebKitTransition', '"a", false, false, null, 1001').propertyName is 'null'
PASS testInitEvent('WebKitTransition', '"a", false, false, "b", 1001').elapsedTime is 1001
PASS successfullyParsed is true
TEST COMPLETE
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<link rel="stylesheet" href="../js/resources/js-test-style.css">
<script src="../js/resources/js-test-pre.js"></script>
</head>
<body>
<p id="description"></p>
<div id="console"></div>
<script src="resources/init-events.js"></script>
<script src="../js/resources/js-test-post.js"></script>
</body>
</html>
This diff is collapsed.
2009-01-05 Darin Adler <darin@apple.com>
Reviewed by Anders Carlsson.
Bug 23104: minor mistakes in init functions for animation and transition events
https://bugs.webkit.org/show_bug.cgi?id=23104
Test: fast/events/init-events.html
Also fixed two StorageEvent problems the test case uncovered:
Made document.createEvent("StorageEvent") work.
Allow null values for StorageEvent.oldValue and StorageEvent.newValue.
* dom/Document.cpp:
(WebCore::Document::createEvent): Sorted alphabetically by the name of the event
class. Added StorageEvent.
* dom/UIEvent.idl: Fixed typo in a comment.
* dom/WebKitAnimationEvent.cpp:
(WebCore::WebKitAnimationEvent::initWebKitAnimationEvent): Use all the arguments.
* dom/WebKitTransitionEvent.cpp:
(WebCore::WebKitTransitionEvent::initWebKitTransitionEvent): Ditto.
* storage/StorageEvent.idl: Use the ConvertNullToNullString keyword on the
arguments to initStorageEvent so it can create events with null values for the
oldValue and newValue, just like the real storage events. Note that the properties
already had ConvertNullStringTo=Null, so this is just the other half of that.
2009-01-05 Darin Adler <darin@apple.com>
Reviewed by Alexey Proskuryakov.
......@@ -101,6 +101,7 @@
#include "SegmentedString.h"
#include "SelectionController.h"
#include "Settings.h"
#include "StorageEvent.h"
#include "StyleSheetList.h"
#include "SystemTime.h"
#include "TextEvent.h"
......@@ -2637,22 +2638,30 @@ DOMWindow* Document::domWindow() const
PassRefPtr<Event> Document::createEvent(const String& eventType, ExceptionCode& ec)
{
if (eventType == "UIEvents" || eventType == "UIEvent")
return UIEvent::create();
if (eventType == "MouseEvents" || eventType == "MouseEvent")
if (eventType == "Event" || eventType == "Events" || eventType == "HTMLEvents")
return Event::create();
if (eventType == "KeyboardEvent" || eventType == "KeyboardEvents")
return KeyboardEvent::create();
if (eventType == "MessageEvent")
return MessageEvent::create();
if (eventType == "MouseEvent" || eventType == "MouseEvents")
return MouseEvent::create();
if (eventType == "MutationEvents" || eventType == "MutationEvent")
if (eventType == "MutationEvent" || eventType == "MutationEvents")
return MutationEvent::create();
if (eventType == "KeyboardEvents" || eventType == "KeyboardEvent")
return KeyboardEvent::create();
if (eventType == "HTMLEvents" || eventType == "Event" || eventType == "Events")
return Event::create();
if (eventType == "OverflowEvent")
return OverflowEvent::create();
if (eventType == "ProgressEvent")
return ProgressEvent::create();
if (eventType == "StorageEvent")
return StorageEvent::create();
if (eventType == "TextEvent")
return TextEvent::create();
if (eventType == "OverflowEvent")
return OverflowEvent::create();
if (eventType == "UIEvent" || eventType == "UIEvents")
return UIEvent::create();
if (eventType == "WebKitAnimationEvent")
return WebKitAnimationEvent::create();
if (eventType == "WebKitTransitionEvent")
return WebKitTransitionEvent::create();
if (eventType == "WheelEvent")
return WheelEvent::create();
#if ENABLE(SVG)
......@@ -2661,12 +2670,6 @@ PassRefPtr<Event> Document::createEvent(const String& eventType, ExceptionCode&
if (eventType == "SVGZoomEvents")
return SVGZoomEvent::create();
#endif
if (eventType == "MessageEvent")
return MessageEvent::create();
if (eventType == "WebKitAnimationEvent")
return WebKitAnimationEvent::create();
if (eventType == "WebKitTransitionEvent")
return WebKitTransitionEvent::create();
ec = NOT_SUPPORTED_ERR;
return 0;
}
......
......@@ -32,7 +32,7 @@ module events {
in DOMWindow view,
in long detail);
// extentsions
// extensions
readonly attribute long keyCode;
readonly attribute long charCode;
readonly attribute long layerX;
......
......@@ -47,17 +47,18 @@ WebKitAnimationEvent::~WebKitAnimationEvent()
}
void WebKitAnimationEvent::initWebKitAnimationEvent(const AtomicString& type,
bool /*canBubbleArg*/,
bool /*cancelableArg*/,
bool canBubbleArg,
bool cancelableArg,
const String& animationName,
double elapsedTime)
{
if (dispatched())
return;
initEvent(type, false, true);
initEvent(type, canBubbleArg, cancelableArg);
m_animationName = animationName;
m_elapsedTime = elapsedTime;
}
const String& WebKitAnimationEvent::animationName() const
......
......@@ -48,17 +48,18 @@ WebKitTransitionEvent::~WebKitTransitionEvent()
}
void WebKitTransitionEvent::initWebKitTransitionEvent(const AtomicString& type,
bool /*canBubbleArg*/,
bool /*cancelableArg*/,
bool canBubbleArg,
bool cancelableArg,
const String& propertyName,
double elapsedTime)
{
if (dispatched())
return;
initEvent(type, false, true);
initEvent(type, canBubbleArg, cancelableArg);
m_propertyName = propertyName;
m_elapsedTime = elapsedTime;
}
const String& WebKitTransitionEvent::propertyName() const
......
......@@ -33,7 +33,7 @@ module storage {
readonly attribute [ConvertNullStringTo=Null] DOMString newValue;
readonly attribute DOMString uri;
readonly attribute DOMWindow source;
void initStorageEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in DOMString keyArg, in DOMString oldValueArg, in DOMString newValueArg, in DOMString uriArg, in DOMWindow sourceArg);
void initStorageEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in DOMString keyArg, in [ConvertNullToNullString] DOMString oldValueArg, in [ConvertNullToNullString] DOMString newValueArg, in DOMString uriArg, in DOMWindow sourceArg);
// Needed once we support init<blank>EventNS
// void initStorageEventNS(in DOMString namespaceURI, in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in DOMString keyArg, in DOMString oldValueArg, in DOMString newValueArg, in DOMString uriArg, in Window sourceArg);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment