servo/components
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
..
allocator Preliminary Android build support (#31086) 2024-01-22 13:00:15 +00:00
atoms Further changes required by Servo 2023-11-06 09:35:57 +01:00
background_hang_monitor BHM: Support aarch64 for Mac sampler (#31298) 2024-02-09 13:55:28 +00:00
bluetooth Preliminary Android build support (#31086) 2024-01-22 13:00:15 +00:00
canvas canvas2d: Implement .reset() (#31258) 2024-02-05 08:53:00 +00:00
compositing Implement non-XR Gamepad discovery and input (#31200) 2024-02-17 18:42:31 +00:00
config script: implement navigator.hardwareConcurrency (#31268) 2024-02-07 18:41:58 +00:00
config_plugins Remove use of proc_macro_diagnostics feature (#30745) 2023-11-17 10:36:09 +00:00
constellation Implement non-XR Gamepad discovery and input (#31200) 2024-02-17 18:42:31 +00:00
deny_public_fields Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
derive_common style: Reduce diff with upstream derive_common and malloc_size_of (#31363) 2024-02-16 10:24:35 +00:00
devtools rustdoc: Fix many rustdoc errors (#31147) 2024-01-22 13:13:48 +00:00
dom_struct Replace script_plugins with a clippy like rustc driver (named crown) (#30508) 2023-12-01 15:50:52 +00:00
domobject_derive Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
geometry deps: Stop vendoring WebRender (#31212) 2024-01-30 08:10:13 +00:00
gfx style: Remove dependency on servo_url (#31358) 2024-02-16 11:56:35 +00:00
hyper_serde Revert "Replace time with std::time in components/net (#31079)" (#31120) 2024-01-18 15:10:48 +00:00
jstraceable_derive Update to syn 2 where possible (#30387) 2023-09-19 15:57:37 +00:00
layout style: Remove dependency on servo_url (#31358) 2024-02-16 11:56:35 +00:00
layout_2020 make size of DefiniteContainingBlock use app units (#31369) 2024-02-17 01:10:14 +00:00
layout_thread style: Remove dependency on servo_url (#31358) 2024-02-16 11:56:35 +00:00
layout_thread_2020 style: Remove dependency on servo_url (#31358) 2024-02-16 11:56:35 +00:00
malloc_size_of style: Reduce diff with upstream derive_common and malloc_size_of (#31363) 2024-02-16 10:24:35 +00:00
media chore: re-export servo-media types (#31180) 2024-01-26 23:25:38 +00:00
metrics Replace time with std::time in components/metrics & components/shared (#31020) 2024-01-10 19:23:47 +00:00
net deps: Remove unused crate dependencies (#31185) 2024-01-26 23:18:26 +00:00
pixels Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
profile Preliminary Android build support (#31086) 2024-01-22 13:00:15 +00:00
rand Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
range Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
remutex rustdoc: Fix many rustdoc errors (#31147) 2024-01-22 13:13:48 +00:00
script Implement non-XR Gamepad discovery and input (#31200) 2024-02-17 18:42:31 +00:00
selectors style: Reduce Servo's diff with upstream to_shmem (#31349) 2024-02-14 11:17:00 +00:00
servo Implement non-XR Gamepad discovery and input (#31200) 2024-02-17 18:42:31 +00:00
servo_arc style: Rustfmt servo/. r=zrhoffman 2023-11-24 08:57:14 +01:00
shared Implement non-XR Gamepad discovery and input (#31200) 2024-02-17 18:42:31 +00:00
size_of_test Further changes required by Servo 2023-08-16 17:46:41 +02:00
style style: Remove dependency on servo_url (#31358) 2024-02-16 11:56:35 +00:00
style_derive Further changes required by Servo 2023-11-24 08:57:14 +01:00
style_static_prefs style: Add a static_prefs implementation (#31351) 2024-02-14 17:02:13 +00:00
style_traits style: Remove dependency on servo_url (#31358) 2024-02-16 11:56:35 +00:00
to_shmem style: Reduce Servo's diff with upstream to_shmem (#31349) 2024-02-14 11:17:00 +00:00
to_shmem_derive style: Reduce Servo's diff with upstream to_shmem (#31349) 2024-02-14 11:17:00 +00:00
url style: Remove dependency on servo_url (#31358) 2024-02-16 11:56:35 +00:00
webdriver_server deps: Remove unused crate dependencies (#31185) 2024-01-26 23:18:26 +00:00
webgpu Fix failed request for adapter when not available (#31002) 2024-01-09 09:12:53 +00:00