From 237f5371a0c5899a218a322db11b20051d548447 Mon Sep 17 00:00:00 2001 From: Daniel Adams Date: Mon, 12 Feb 2024 09:13:13 -1000 Subject: [PATCH] Add window event handlers for gamepad connect/disconnect --- components/script/dom/macros.rs | 4 ++++ components/script/dom/webidls/Gamepad.webidl | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/components/script/dom/macros.rs b/components/script/dom/macros.rs index e9b48731280ab..fa8554cac28ad 100644 --- a/components/script/dom/macros.rs +++ b/components/script/dom/macros.rs @@ -515,6 +515,8 @@ macro_rules! window_event_handlers( event_handler!(unhandledrejection, GetOnunhandledrejection, SetOnunhandledrejection); event_handler!(unload, GetOnunload, SetOnunload); + event_handler!(gamepadconnected, GetOngamepadconnected, SetOngamepadconnected); + event_handler!(gamepaddisconnected, GetOngamepaddisconnected, SetOngamepaddisconnected); ); (ForwardToWindow) => ( window_owned_event_handler!(afterprint, GetOnafterprint, @@ -541,6 +543,8 @@ macro_rules! window_event_handlers( window_owned_event_handler!(unhandledrejection, GetOnunhandledrejection, SetOnunhandledrejection); window_owned_event_handler!(unload, GetOnunload, SetOnunload); + window_owned_event_handler!(gamepadconnected, GetOngamepadconnected, SetOngamepadconnected); + window_owned_event_handler!(gamepaddisconnected, GetOngamepaddisconnected, SetOngamepaddisconnected); ); ); diff --git a/components/script/dom/webidls/Gamepad.webidl b/components/script/dom/webidls/Gamepad.webidl index 925eaf2a54474..9d4ba3b46b8d2 100644 --- a/components/script/dom/webidls/Gamepad.webidl +++ b/components/script/dom/webidls/Gamepad.webidl @@ -27,3 +27,9 @@ enum GamepadHand { "left", "right" }; + +// https://www.w3.org/TR/gamepad/#extensions-to-the-windoweventhandlers-interface-mixin +partial interface mixin WindowEventHandlers { + attribute EventHandler ongamepadconnected; + attribute EventHandler ongamepaddisconnected; +}; \ No newline at end of file