2.0.0 (2024-02-26) * Added simulated repeat for keyboard and gamepad bindings (INPUT_CONTROLLER_EVENT_ACTION_REPEAT, InputController_setRepeatRate(), InputController_processRepeats()) * Added the ability to bind keys with specific modifiers (InputMap_bindKeyWithModifiers, etc.) * Added InputController_isActionActive * Updated naming conventions: trigger -> activate/start, release -> stop * Changed the semantics of InputController input function return values. If peek is false, the return value now indicates whether any registered event handler returned true. * Added timestamps. Dispatched events are now struct InputController_event *. * Added gamepad aliasing. Call InputMap_addGamepadAlias() to treat gamepads with different vendor/product IDs as equivalent to each other. * Added GamepadMap, acting as an interface layer between logical and physical gamepad mapping * Added GamepadLogicalInputController, a standalone layer of interpretation between raw gamepad events and GamepadMap logic, separable from InputController itself * Added gamepad logical mapping and mouse event mapping to InputMap and InputController * Added dead zone settings to InputController for logical gamepad axis mapping * Added motion events, a new type of InputController event parallel to action down/up, for continuous absolute or relative movement along an axis or pair of axes * Added InputMap_enumerateBindingsForAction() * Added InputRecorder_rewriteReplayStartupData() * Added tolerateErrors parameter to InputMap_deserialize() 1.1.0 (2014-11-21) * Added InputMap methods for unbinding all actions for a particular input, and all inputs of one type for a particular action * Updated for utilities 1.9.0 * Removed method function pointers in preparation for stemobject 4.0.0 (except for InputController's triggerAction and releaseAction) 1.0.2 (2014-06-29) * Added support for modern Xcode/iOS SDK versions 1.0.1 (2014-02-06) * Fixed a bug in InputPlayback_rewind that caused subsequent input events to be inverted if rewound while an action was triggered * Added InputController_reset() 1.0.0 (2013-12-25) * Initial version