Keyboard event listener that filters out repeated keydown events and normalizes keycodes to coordinates. The Shift keys toggle 'sustain'.

Constructors

  • Construct a new keyboard event listener.

    Parameters

    • autobind: boolean = false

      Start listening to "keydown" and "keyup" events immediately.

    • Optional log: ((msg) => void)

      Logging function.

        • (msg): void
        • Parameters

          • msg: string

          Returns void

    Returns Keyboard

Properties

_keydown?: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      • event: KeyboardEvent

      Returns void

_keyup?: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      • event: KeyboardEvent

      Returns void

activeKeys: Set<string>
keydownCallbacks: KeydownCallback[]
keyupCallbacks: Map<string, KeyupCallback[]>
log: ((msg) => void)

Type declaration

    • (msg): void
    • Parameters

      • msg: string

      Returns void

pendingKeys: Set<string>
stickyKeys: Set<string>

Methods

  • Register a listener for processed keydown events.

    Parameters

    Returns void

  • Release keys sustained due to being pressed down with 'Shift'.

    Returns void

  • Stop listening to "keydown" and "keyup" events if constructed with autobind = true.

    Returns void

  • Listener to be registered with window.addEventListener("keydown", ...).

    Parameters

    • event: KeyboardEvent

      Keyboard event of a key being pressed down.

    Returns void

  • Listener to be registered with window.addEventListener("keyup", ...).

    Parameters

    • event: KeyboardEvent

      Keyboard event of a pressed key being released.

    Returns void

Generated using TypeDoc