@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
44 lines (42 loc) • 2.67 kB
TypeScript
import type Accessor from "../../../core/Accessor.js";
export interface GamepadInputDeviceProperties {}
/**
* Properties and configuration of a gamepad.
*
* Two types of devices are currently supported: [Standard Gamepads](https://www.w3.org/TR/gamepad/#remapping)
* and [3Dconnexion devices](https://en.wikipedia.org/wiki/3Dconnexion).
*
* A standard gamepad will have standardized [mappings](https://www.w3.org/TR/gamepad/#remapping) for buttons and
* axes, like the [XBox360 controller](https://en.wikipedia.org/wiki/Xbox_360_controller) and the
* [DualShock 4 controller](https://en.wikipedia.org/wiki/DualShock#DualShock_4) (PlayStation 4 controller).
* To find out more information about your device and test its connection with certain browsers, please refer to
* the [HTML5 Gamepad Tester](https://html5gamepad.com/).
*
* The W3C standard for [Gamepad](https://www.w3.org/TR/gamepad) is still in draft status. As such, support is
* limited to a subset of browsers and operating systems. We have not tested every browser/OS combination but as
* a general guide we have experienced reliable results with the following pairings:
*
* | Browser | Windows | macOS |
* |:---|:---|:---|
* | Chrome | XBox360 <br/> XBox One <br/> 3DConnexion Devices <br/> PS4 Controller | XBox360 <br/> XBox One <br/> 3DConnexion Devices <br/> PS4 Controller |
* | Firefox| XBox360 <br/> XBox One | No gamepad devices support this browser/OS combination |
* | Edge(17 and above) | XBox360 <br/> XBox One | This browser is not supported on this OS |
* | Safari | This browser is not supported on this OS | No gamepad devices support this browser/OS combination |
*
* > [!WARNING]
* >
* > **Notes:**
* > You might need to restart your browser after connecting a device.
* > Per [W3C Working Draft 29 October 2020](https://www.w3.org/TR/2020/WD-gamepad-20201029/),
* > gamepad functionality may not be available on some or all browsers if the web application is hosted on a
* > [non-secure context](https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts) (e.g. http rather than https).
* > Future versions of the ArcGIS Maps SDK for JavaScript may explicitly disable gamepad capabilities on non-secure contexts.
*
* @since 4.9
* @see [View.input.gamepad.devices](https://developers.arcgis.com/javascript/latest/references/core/views/input/gamepad/GamepadSettings/#devices) for a collection of detected gamepads.
*/
export default class GamepadInputDevice extends Accessor {
constructor(properties: GamepadInputDeviceProperties);
/** The native Gamepad object exposed by the browser. */
get native(): Gamepad | null | undefined;
}