Auto merge of #25636 - pshaughn:submitevent, r=jdm

Implement SubmitEvent

<!-- Please describe your changes on the following line: -->
FormSubmitter was already being passed into submit, so there wasn't much work to do here other than making the new event interface itself.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #24617

<!-- Either: -->
- [X] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
This commit is contained in:
bors-servo 2020-01-31 06:14:47 -05:00 committed by GitHub
commit 393b6768f0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 131 additions and 58 deletions

View file

@ -692159,15 +692159,15 @@
"testharness"
],
"html/semantics/forms/form-submission-0/form-double-submit-2.html": [
"f0c9471a704d4c0c0742d7ed8e8f13a789514d69",
"4c715de250e22bf48c225f5337ff38736f3fa80b",
"testharness"
],
"html/semantics/forms/form-submission-0/form-double-submit-3.html": [
"1bad23260d054b8f60e255de4d1a074803db4b2f",
"cdb50d226a893de2250a19a93c0b5a0f72bbcfee",
"testharness"
],
"html/semantics/forms/form-submission-0/form-double-submit.html": [
"1102e304174eeec18b65b54deec74a328d998be0",
"005f393bfd42fb850a81eb1d87bae048b7cad30b",
"testharness"
],
"html/semantics/forms/form-submission-0/form-echo.py": [

View file

@ -1376,27 +1376,6 @@
[SVGAElement includes HTMLHyperlinkElementUtils: member names are unique]
expected: FAIL
[SubmitEvent interface object name]
expected: FAIL
[SubmitEvent interface object length]
expected: FAIL
[SubmitEvent interface: existence and properties of interface prototype object]
expected: FAIL
[SubmitEvent interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
[SubmitEvent interface: attribute submitter]
expected: FAIL
[SubmitEvent interface: existence and properties of interface object]
expected: FAIL
[SubmitEvent interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[SVGElement interface: attribute onwebkitanimationend]
expected: FAIL

View file

@ -1,22 +0,0 @@
[SubmitEvent.window.html]
[Successful SubmitEvent constructor]
expected: FAIL
[Failing SubmitEvent constructor]
expected: FAIL
[Successful SubmitEvent constructor; empty dictionary]
expected: FAIL
[Successful SubmitEvent constructor; null submitter]
expected: FAIL
[Successful SubmitEvent constructor; missing dictionary]
expected: FAIL
[Successful SubmitEvent constructor; null/undefined submitter]
expected: FAIL
[Successful SubmitEvent constructor; null/undefined dictionary]
expected: FAIL

View file

@ -1,5 +1,4 @@
[form-double-submit-2.html]
expected: ERROR
[preventDefault should allow onclick submit() to succeed]
expected: FAIL

View file

@ -1,5 +1,4 @@
[form-double-submit-3.html]
expected: ERROR
[<button> should have the same double-submit protection as <input type=submit>]
expected: FAIL

View file

@ -1,5 +1,4 @@
[form-double-submit.html]
expected: ERROR
[default submit action should supersede onclick submit()]
expected: FAIL

View file

@ -5,9 +5,6 @@
[firing an event named submit; form.requestSubmit(submitter)]
expected: FAIL
[firing an event named submit; clicking a submit button]
expected: FAIL
[firing an event named submit; form.requestSubmit(null)]
expected: FAIL

View file

@ -19032,7 +19032,7 @@
"testharness"
],
"mozilla/interfaces.html": [
"114ec29df620cc0526d39a41928f72d9359890a9",
"fc82a7e82e936811024cbefadaa9cc396511942b",
"testharness"
],
"mozilla/interfaces.js": [

View file

@ -218,6 +218,7 @@ test_interfaces([
"StorageEvent",
"StyleSheet",
"StyleSheetList",
"SubmitEvent",
"Text",
"TextTrack",
"TextTrackCue",

View file

@ -25,6 +25,8 @@
<script>
let frame1 = document.getElementById('frame1');
let frame2 = document.getElementById('frame2');
let form1 = document.getElementById('form1');
let submitbutton = document.getElementById('submitbutton');
async_test(t => {
window.addEventListener('load', () => {

View file

@ -25,6 +25,8 @@
<script>
let frame1 = document.getElementById('frame1');
let frame2 = document.getElementById('frame2');
let form1 = document.getElementById('form1');
let submitbutton = document.getElementById('submitbutton');
async_test(t => {
window.addEventListener('load', () => {

View file

@ -25,6 +25,8 @@
<script>
let frame1 = document.getElementById('frame1');
let frame2 = document.getElementById('frame2');
let form1 = document.getElementById('form1');
let submitbutton = document.getElementById('submitbutton');
async_test(t => {
window.addEventListener('load', () => {