Bug 213060 - [WebDriver] Support input cancel list
Summary: [WebDriver] Support input cancel list
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebDriver (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-06-10 17:01 PDT by Lauro Moura
Modified: 2020-06-10 17:05 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Lauro Moura 2020-06-10 17:01:49 PDT
Currently, WebAutomationSession/SimulatedInputDispacher generates a set of default reset states for each input source when canceling an interaction sequence. (WebAutomationSession::cancelInteractionSequence).

This is causing the mouseup reset event to be emitted with (0,0) position instead of the position of the last mouse press/move. This is making imported/w3c/webdriver/tests/perform_actions/pointer_contextmenu.py::test_release_control_click (and probably others to fail).

A tentative fix for this, preserving the pointer coordinate, also showed that the order of the actions is not preserved (Cancel actions are traversed in a different order than expected).

In the current WebDriver spec, these are the actions that add actions to the inputCancelList:

* KeyDown -> Adds the same state with KeyUp
* PointerDown -> Adds the same state with PointerUp