Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upImplement WheelEvent interface #23154
Conversation
highfive
commented
Apr 2, 2019
|
Thanks for the pull request, and welcome! The Servo team is excited to review your changes, and you should hear from @paulrouget (or someone else) soon. |
highfive
commented
Apr 2, 2019
|
Heads up! This PR modifies the following files:
|
highfive
commented
Apr 2, 2019
|
Error syncing changes upstream. Logs saved in error-snapshot-1554165902717. |
|
@robert-snakard Looks like this needs to be rebased in a way that doesn't include commits which are already present on master. |
|
This should just be master with 2 commits on top... |
|
It's possible that because the @bors-servo merge commits are missing it is not actually equivalent to master. I recommend doing a hard reset to master and cherry-picking your two commits, then force pushing. |
ef4adf8
to
9e01a45
|
Opened new PR for upstreamable changes. Completed upstream sync of web-platform-test changes at web-platform-tests/wpt#16199. |
|
PR title changed; changed existing PR. Completed upstream sync of web-platform-test changes at web-platform-tests/wpt#16199. |
|
@jdm Updated the branch version and tested on my machine, the patch still works. Do I need to do anything else? |
|
No, we just need to review these changes now. |
|
@paulrouget Review ping? |
|
@bors-servo try=wpt |
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 failed because tests that were supposed to fail are now passing, looking for the idlharness now to update it |
9e01a45
to
99e99b8
|
@bors-servo try=wpt |
|
@robert-snakard: |
|
|
Missed that one when merging with the mousebuttons patch. Will fix tonight.
Is there any way to run these tests on my local machine before I push?
…On Fri, Jun 7, 2019 at 2:03 PM Josh Matthews ***@***.***> wrote:
|
|
You can run individual tests or directories with |
|
Looks like these tests as well:
Otherwise it should be ready :) |
c44a49c
to
cc16f43
cc16f43
to
219df9b
|
Error syncing changes upstream. Logs saved in error-snapshot-1559972947848. |
|
Error syncing changes upstream. Logs saved in error-snapshot-1559972971985. |
Note: The WheelEvent interface supports rotation in all 3 spatial dimensions. This implementation only supports two due to limitations in the Glutin compositor. The wheelevent interface is a dom interface that triggers for any attached device that can rotate in one or more spatial dimensions. Traditionally this is the mouse wheel though other devices could be used as well. E.g. the trackball on a trackball mouse.
The wheelevent sends a signal when a supported device is rotated in the x, y, or z rotational dimensions. These tests only check whether this signal is received for any rotation at all.
|
Transplanted upstreamable changes to existing PR. Completed upstream sync of web-platform-test changes at web-platform-tests/wpt#16199. |
|
@bors-servo 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 -->
|
|
|
Thanks for finishing the merge up for me @jdm / @paulrouget |
|
Thanks for doing the hard work :) |
|
Haha, we must have different definitions of hard work, that merge took forever! |
robert-snakard commentedApr 2, 2019
•
edited by jdm
Created a new dom interface: "WheelEvent" and added WPT tests to confirm the interface works. To do this I had to do the following:
WheelEventdom interface. It can be found inscript/dom/wheelevent.rsanddom/webidls/WheelEvent.webidlWheelEventoption to the compositor'sCompositorEventenumWheeloption to the compositor'sWindowEventenumWheelDeltatype to thescript_traitsmodulescroll_eventlogic. Now we send aWheelEventbefore scrolling. Repeat: we send the WheelEvent notification BEFORE we send the scroll delta.uievents/order-of-eventstest collection./mach build -ddoes not report any errors./mach test-tidydoes not report any errorsThis change is