servo/components/script/task_source
Daniel Adams c999d4546c
Implement non-XR Gamepad discovery and input (#31200)
* Create embedder event to send to constellation

* Handle gamepad message in constellation, send to script thread

* Handle GamepadEvent in script thread and dispatch event to document

* Add missing Clones, fix event

* Add gamepad task source

* Adjust GamepadIndex type, remove unused imports

* Add internal getter for gamepads list

* Update gamepad new methods

* Handle gamepad connect and disconnect events

* Proto will be none, no need for HandleObject

* Initialize buttons and axes to standard mapping

* Adjust update type index types

* Update GamepadButton update function

* Adjust Gamepad mapping comments to match spec, add update logic

* Amend comment

* Update button and axis inputs on Updated event

* Add GilRs as gamepad backend in servoshell

* Add spec links, queue gamepad updates on task source

* ./mach fmt

* Fix comment length

* Split out button init, update spec comments

* Move gamepad event handling from document to global

* Map and normalize axes/button values

* Use std::time for gamepad timestamp

* Adjust gamepad handling in event loop

* Move button press/touch check into map+normalize function

- Small change but is more in line with spec

* ./mach fmt

* Update comment spec links and warning messages

* Doc comments -> regular comments

* Add window event handlers for gamepad connect/disconnect

* Adjust gamepad disconnect behavior

* Add missing TODO's, adjust gamepad/gamepadbutton list methods and formatting

* Update button handling from gilrs, add comments

* Enable gamepad pref during WPT tests and update expectations

* Update WPT expectations in meta-legacy-layout
2024-02-17 18:42:31 +00:00
..
dom_manipulation.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
file_reading.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
gamepad.rs Implement non-XR Gamepad discovery and input (#31200) 2024-02-17 18:42:31 +00:00
history_traversal.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
media_element.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
mod.rs Implement non-XR Gamepad discovery and input (#31200) 2024-02-17 18:42:31 +00:00
networking.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
performance_timeline.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
port_message.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
remote_event.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
timer.rs rustdoc: Fix many rustdoc errors (#31147) 2024-01-22 13:13:48 +00:00
user_interaction.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
websocket.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00