Auto merge of #23154 - robert-snakard:issue_22843, r=paulrouget

Implement WheelEvent interface

Created a new dom interface: "WheelEvent" and added WPT tests to confirm the interface works. To do this I had to do the following:

- Create a new `WheelEvent` dom interface. It can be found in `script/dom/wheelevent.rs` and `dom/webidls/WheelEvent.webidl`
- Add a new `WheelEvent` option to the compositor's `CompositorEvent` enum
- Add a new `Wheel` option to the compositor's `WindowEvent` enum
- Add a new `WheelDelta` type to the `script_traits` module
- Modify the `scroll_event` logic. Now we send a `WheelEvent` before scrolling. Repeat: we send the WheelEvent notification BEFORE we send the scroll delta.
- Add two manual wpt tests to the `uievents/order-of-events` test collection

---
<!-- 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 #22843 (GitHub issue number if applicable)

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because ___

<!-- 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23154)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2019-06-09 13:55:03 -04:00 committed by GitHub
commit 973a3448a4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
19 changed files with 536 additions and 146 deletions

View file

@ -20330,7 +20330,7 @@
"testharness"
],
"mozilla/interfaces.html": [
"2effd46f565c4787e8632f5e898e1b43d457672f",
"b6cbf4b4f9b4fdcbe5f05a96970822d2ae9d325d",
"testharness"
],
"mozilla/interfaces.js": [

View file

@ -242,6 +242,7 @@ test_interfaces([
"WebGLActiveInfo",
"WebGLShaderPrecisionFormat",
"WebSocket",
"WheelEvent",
"Window",
"Worker",
"XMLDocument",