Contact emails
[email protected], [email protected], [email protected], 
[email protected]


Explainer
https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/GamepadEventDrivenInputAPI/explainer.md


Specification
https://w3c.github.io/gamepad


Summary
This proposal extends the Gamepad API with a new event-driven model that 
enables applications to receive gamepad input with lower latency. Instead of 
relying on frequent polling via navigator.getGamepads(), developers can now 
listen for a rawgamepadinputchange event, which fires whenever new input data 
is available from the device. This allows for more responsive input handling, 
particularly in latency-sensitive applications.


Blink component
Blink>GamepadAPI


Web Feature ID
No information provided


Search tags
gamepad, button, axis, event, raw input


TAG review
None


TAG review status
Pending


Origin Trial Name
Gamepad Raw Input Event


Goals for experimentation
The OT should help us collect information on the performance impact of this 
change across real users. There is a high chance that the current API shape is 
NOT its final form (see more at https://github.com/w3c/gamepad/issues/4). We 
want to measure whether this version of raw events brings measurable 
performance improvements for cloud gaming, considering many different devices. 
If it negatively impacts low-powered devices, we'll need to work with partners 
on improvements. It could be adding event coalescing, changing the spec 
proposal to permit event throttling, etc.


Chromium Trial Name
GamepadRawInputChangeEvent


Origin Trial documentation link
https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/GamepadEventDrivenInputAPI/explainer.md


WebFeature UseCounter name
kGamepadRawInputChangeEventListener


Risks




Interoperability and Compatibility
No information provided

Gecko: No signal (https://github.com/mozilla/standards-positions/issues/1389) 
Firefox's experimental implementation, GamepadButtonEvent: 
https://searchfox.org/mozilla-central/source/dom/webidl/GamepadButtonEvent.webidl
 , GamepadAxisMoveEvent: 
https://searchfox.org/mozilla-central/source/dom/webidl/GamepadAxisMoveEvent.webidl#9

WebKit: No signal (https://github.com/WebKit/standards-positions/issues/647)

Web developers: Positive 
(https://stackoverflow.com/questions/72294832/using-gamepad-api-via-events-rather-than-polling)
 There is strong developer interest in an event-driven Gamepad API to improve 
responsiveness and simplify input handling. In w3c/gamepad#4 
(https://github.com/w3c/gamepad/issues/4), developers have long requested 
events for gamepad input, citing the inefficiency of polling-based models. 
Similarly, in a popular Stack Overflow thread, developers express frustration 
with the lack of native gamepad events and seek workarounds, underscoring unmet 
needs in the current API. The existence of third-party libraries like 
gamecontroller.js (https://github.com/firsching/gamecontroller.js) and 
Gamepad-Controller (https://github.com/alvaromontoro/gamepad-controller) 
further demonstrates this.

Other signals:


WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it 
has potentially high risk for Android WebView-based applications?
No information provided



Reason this experiment is being extended
Previously Chromium had a 4-week release cadency, which meant the an origin 
trial spanning 6 milestones would last 24 weeks. However, now that Chromium 
adopted a 2-week release, this origin trial needs to be extended to account for 
that. Since this origin trial started in M149 (went stable on 06/02/2026), to 
make sure it lasts for 24 weeks on stable it needs to be extended to end with 
M157 (inclusive)


Ongoing technical constraints
No information provided


Debuggability
N/A


Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, 
ChromeOS, Android, and Android WebView)?
Yes


Is this feature fully tested by web-platform-tests?
No
Web platform tests will be added with the prototype implementation.


Flag name on about://flags
#gamepad-raw-input-change-event


Finch feature name
GamepadRawInputChangeEvent


Requires code in //chrome?
True


Tracking bug
https://crbug.com/40582297


Estimated milestones


Origin trial desktop first 149

Origin trial desktop last 154

Origin trial extension 1 end milestone 157

DevTrial on desktop 147

DevTrial on Android 147




Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5989275208253440?gate=5141545031434240


Links to previous Intent discussions
Intent to Prototype: 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/682e0a48.170a0220.2aa17e.113c.GAE%40google.com
Intent to Experiment: 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CH4PR00MB23897DFC0C754FDDCC5DFBFBD5372%40CH4PR00MB2389.namprd00.prod.outlook.com



This intent message was generated by Chrome Platform Status.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6a9215be.e8a51b51.6abb3.0323.GAE%40google.com.

Reply via email to