webdriver: improve perform pointermove & wheel actions with more accurate coordinates (#38095)

1. Create `get_origin_relative_coordinates` according to
[spec](https://w3c.github.io/webdriver/#dfn-get-coordinates-relative-to-an-origin)
to be reused
2. Add previously missing offset for PointerOrigin::Element
3. Refactor code for perform pointermove/wheel to be closer to spec.
4. Handle some issues with spec:
https://github.com/w3c/webdriver/issues/1758

Testing: Several new passing cases as we are more precise with
coordinates now.
Fixes: Part of #38042.

---------

Signed-off-by: Euclid Ye <euclid.ye@huawei.com>
This commit is contained in:
Euclid Ye 2025-07-16 10:03:34 +08:00 committed by GitHub
parent 189e649222
commit 2e3c280f46
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 128 additions and 79 deletions

View file

@ -1,3 +0,0 @@
[key_shortcuts.py]
[test_mod_a_mod_c_right_mod_v_pastes_text]
expected: FAIL

View file

@ -29,8 +29,5 @@
[test_move_to_origin_position_within_frame[element\]]
expected: FAIL
[test_params_actions_origin_outside_viewport[element\]]
expected: FAIL
[test_move_to_position_in_viewport[default value\]]
expected: FAIL

View file

@ -1,3 +0,0 @@
[pointer_origin.py]
[test_element_center_point_with_offset]
expected: FAIL

View file

@ -19,6 +19,3 @@
[test_pen_pointer_properties]
expected: FAIL
[test_params_actions_origin_outside_viewport[element\]]
expected: FAIL

View file

@ -28,6 +28,3 @@
[test_move_to_fractional_position]
expected: FAIL
[test_params_actions_origin_outside_viewport[element\]]
expected: FAIL