Skip to content

Fix WebDriverSession::input_cancel_list related logic#37010

Merged
xiaochengh merged 5 commits intoservo:mainfrom
yezhizhen:fix-input-cancel-list
May 19, 2025
Merged

Fix WebDriverSession::input_cancel_list related logic#37010
xiaochengh merged 5 commits intoservo:mainfrom
yezhizhen:fix-input-cancel-list

Conversation

@yezhizhen
Copy link
Copy Markdown
Member

@yezhizhen yezhizhen commented May 15, 2025

  • Remove incorrect addition to input_cancel_list in dispatch_keyup_action
  • For KeyDown and PointerDown, delay the addition to input_cancel_list until "Dispatching action algorithm" is done to match the spec. Previously the addition is done before notifying constellation. Moreover, this makes sure that pointerUp is appended even if dispatch_pointerdown_action returns early, so that Release Actions always have the correct order.
  • Remove incorrect addition to input_cancel_list in dispatch_pointerup_action. This wrongly added "pointerdown" in Release Actions
  • Reduce code duplication
  • Add TODO for PointerInputState::subtype and pointerID

Testing: ./mach test-wpt -r --log-raw "D:\servo test log\perform-actions.txt" tests\wpt\tests\webdriver\tests\classic\perform_actions --product servodriver has no new failures so no regression. There are a lot more passing tests, but I think mostly are because there is no CI for webdriver.

cc @xiaochengh @jdm @PotatoCP @longvatrong111

@yezhizhen yezhizhen force-pushed the fix-input-cancel-list branch from b93c113 to b894583 Compare May 15, 2025 08:46
Copy link
Copy Markdown
Contributor

@longvatrong111 longvatrong111 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The logic looks good to me. There are only some minor suggestions.

@yezhizhen yezhizhen force-pushed the fix-input-cancel-list branch from 1a9acf6 to 8436d6e Compare May 17, 2025 02:56
@yezhizhen yezhizhen force-pushed the fix-input-cancel-list branch from c6d2473 to 3691a3b Compare May 18, 2025 12:53
Signed-off-by: Euclid Ye <[email protected]>
@xiaochengh xiaochengh enabled auto-merge May 19, 2025 08:11
@xiaochengh xiaochengh added this pull request to the merge queue May 19, 2025
Merged via the queue into servo:main with commit 7ac302f May 19, 2025
21 checks passed
@yezhizhen yezhizhen deleted the fix-input-cancel-list branch May 19, 2025 09:14
yezhizhen added a commit to yezhizhen/servo that referenced this pull request May 22, 2025
github-merge-queue bot pushed a commit that referenced this pull request May 23, 2025
…_list` (#37081)

Re-remove deleted logic from `WebDriverSession::input_cancel_list` logic
in #37010 which was re-adedd during merge resolution in #36932.
Otherwise, duplicate items would be registered in Release Actions.

Signed-off-by: Euclid Ye <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants