/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsIDOMGamepadEvent.idl"

[builtinclass, scriptable, uuid(d75d4d2b-e7b4-4b93-ac35-2e70b57d9b28)]
interface nsIDOMGamepadButtonEvent : nsIDOMGamepadEvent
{
  /**
   * Index in gamepad.buttons of the button that was pressed or released.
   */
  readonly attribute unsigned long button;

  [noscript]
  void initGamepadButtonEvent(in DOMString typeArg,
                              in boolean canBubbleArg,
                              in boolean cancelableArg,
                              in nsIDOMGamepad gamepad,
                              in unsigned long button);
};

dictionary GamepadButtonEventInit : GamepadEventInit
{
  unsigned long button;
};
