web-platform-tests / interop

web-platform-tests Interop project
273 stars 28 forks source link

Test change proposal for pointer events #628

Closed nairnandu closed 3 months ago

nairnandu commented 5 months ago

Test List

  1. coalesced_events_attributes_under_load.https.html?mouse
  2. coalesced_events_attributes.html?mouse
  3. idlharness.window.html
  4. mouse-pointer-boundary-events-for-shadowdom.html
  5. pointerevent_after_target_appended.html?mouse
  6. pointerevent_attributes_hoverable_rightbutton.html?mouse
  7. pointerevent_auxclick_is_a_pointerevent.html?mouse
  8. pointerevent_boundary_events_at_implicit_release_hoverable_pointers.html
  9. pointerevent_capture_suppressing_mouse.html
  10. pointerevent_click_during_capture.html
  11. pointerevent_click_is_a_pointerevent_multiple_clicks.html?mouse
  12. pointerevent_click_is_a_pointerevent.html?mouse
  13. pointerevent_constructor.html
  14. pointerevent_contextmenu_is_a_pointerevent.html?mouse
  15. pointerevent_fractional_coordinates.html?mouse
  16. pointerevent_mouse_capture_change_hover.html
  17. pointerevent_mouse_pointercapture_inactivate_pointer.html
  18. pointerevent_pointermove_on_chorded_mouse_button.html
  19. pointerevent_pointerout_no_pointer_movement.html
  20. pointerevent_releasepointercapture_events_to_original_target.html?mouse
  21. pointerevent_sequence_at_implicit_release_on_click.html?mouse
  22. pointerevent_touch-action-keyboard.html
  23. predicted_events_attributes.html?mouse
  24. synthetic-mouse-enter-leave-over-out-button-state-after-target-removed.tentative.html?buttonType=LEFT&button=0&buttons=1
  25. synthetic-mouse-enter-leave-over-out-button-state-after-target-removed.tentative.html?buttonType=MIDDLE&button=1&buttons=4

Rationale

As part of the carryover evaluation - #472 a new set of tests were proposed to be added. This was not reviewed during the carryover discussion. Raising it as a test change proposal.

nairnandu commented 5 months ago

@jgraham @nt1m could you review these changes for Gecko and WebKit?

jgraham commented 5 months ago

pointerevent_attributes_hoverable_rightbutton.html has been merged into pointerevent_attributes.html, so is already in the focus area.

Per @smaug---- pointerevent_click_during_capture.html is likely not correct, given that https://github.com/w3c/pointerevents/issues/356 was fixed after the test was written. However we should fix the test and align implementations.

Generally we think these tests will likely require some work to correctly match the latest specs, but that adding them to the focus area makes sense since this is an area where implementation differences are regularly causing real world difficulties for users and web authors.

nt1m commented 5 months ago

cc @aprotyas Here's a link to assess these tests: https://wpt.fyi/results/pointerevents?label=master&label=experimental&aligned&view=interop&q=path%3A%22%2Fpointerevents%2Fcoalesced_events_attributes_under_load.https.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fcoalesced_events_attributes.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fidlharness.window.html%22%20or%20path%3A%22%2Fpointerevents%2Fmouse-pointer-boundary-events-for-shadowdom.html%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_after_target_appended.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_attributes_hoverable_rightbutton.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_auxclick_is_a_pointerevent.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_boundary_events_at_implicit_release_hoverable_pointers.html%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_capture_suppressing_mouse.html%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_click_during_capture.html%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_click_is_a_pointerevent_multiple_clicks.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_click_is_a_pointerevent.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_constructor.html%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_contextmenu_is_a_pointerevent.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_fractional_coordinates.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_mouse_capture_change_hover.html%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_mouse_pointercapture_inactivate_pointer.html%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_pointermove_on_chorded_mouse_button.html%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_pointerout_no_pointer_movement.html%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_releasepointercapture_events_to_original_target.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_sequence_at_implicit_release_on_click.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fpointerevent_touch-action-keyboard.html%22%20or%20path%3A%22%2Fpointerevents%2Fpredicted_events_attributes.html%3Fmouse%22%20or%20path%3A%22%2Fpointerevents%2Fsynthetic-mouse-enter-leave-over-out-button-state-after-target-removed.tentative.html%3FbuttonType%3DLEFT%26button%3D0%26buttons%3D1%22%20or%20path%3A%22%2Fpointerevents%2Fsynthetic-mouse-enter-leave-over-out-button-state-after-target-removed.tentative.html%3FbuttonType%3DMIDDLE%26button%3D1%26buttons%3D4%22

zcorpan commented 5 months ago

The spreadsheet with comments/motivations is at https://docs.google.com/spreadsheets/d/1GVqvTfRBh_film7kzMflCSJjIkq1TV4mRcPoldNSK1Q/edit?usp=sharing

The tests that have "recent consensus" implies that the spec hasn't been fixed yet to reflect the consensus. Where that is the case, I think it would be good to get the spec updated before including the corresponding test in Interop.

mustaqahmed commented 5 months ago

The spreadsheet with comments/motivations is at https://docs.google.com/spreadsheets/d/1GVqvTfRBh_film7kzMflCSJjIkq1TV4mRcPoldNSK1Q/edit?usp=sharing

I will update the sheet now based on the comments above. If anyone wants to update the sheet, feel free to add your comment in Column F along with your email.

The tests that have "recent consensus" implies that the spec hasn't been fixed yet to reflect the consensus. Where that is the case, I think it would be good to get the spec updated before including the corresponding test in Interop.

Thanks for calling this out, we have two such tests. After revisiting the spec status for both just now, I concluded that they are safe to "include". Please let us know if anyone thinks otherwise:

mustaqahmed commented 5 months ago

I will update the sheet now based on the comments above.

Done.

zcorpan commented 4 months ago

Thanks. OK for us to include.

nairnandu commented 4 months ago

@nt1m / @aprotyas could you review the updated scope - pointerevents and uievents

mustaqahmed commented 3 months ago

@nairnandu The 2024 dashboard entry for pointer/mouse events still point to the 2023 list. Is it time to include the added scope from your last comment?

aprotyas commented 3 months ago

@nairnandu apologies for the delay here -- both scope changes look reasonable to me. I think we can proceed to reflecting this in the 2024 dashboard.

nairnandu commented 3 months ago

Thank you @aprotyas and @mustaqahmed web-platform-tests/wpt-metadata#6282 and web-platform-tests/wpt-metadata#6283 raised