PackageTrack
Sign in Get early access

gilrs

Game Input Library for Rust

0.11.2 7.9M downloads/mo #3526 most downloaded on crates.io source

What this package is like to depend on

Last release 2 months ago

30 May 2026

Release timing varies

gaps range from 9 days to 1.3 years

Most releases are documented

notes for 31 of 39 stable releases

Nothing withdrawn

no release was ever pulled

10 years old

39 releases · first in 2016

2 releases in the last 12 months

see the full history below

Release timeline

39 releases · Aug 2016 to May 2026
2017 2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 39
  1. 0.11.2 30 May 2026
    Release notes

    Changed

    • MSRV is now 1.84
    • Updated bundled mappings
    • Always use forward slash in include/include_str!
    Open source →
  2. 0.11.1 12 Jan 2026
    Release notes

    Changed

    • Updated bundled mappings. (!167)

    Added

    • Added LinuxGamepadExt trait with devpath method. (!166, !167)
    • It is now possible to disable force feedback support via GilrsBuilder::with_force_feedback. (!165)
    Open source →
  3. 0.11.0 15 Sep 2024
    Release notes

    Breaking changes

    • Mark Error enums, EventType and Event as non_exhaustive

    Added

    • Added EventType::ForceFeedbackEffectCompleted

    Changed

    • Minimal supported Rust version is now 1.73
    • Updated dependencies
    • Updated bundled mappings

    Fixed

    • Fixed potential overflow in btn_value
    Open source →
  4. 0.10.10 15 Sep 2024

    Nothing published for this version

  5. 0.10.9 28 Jul 2024

    Nothing published for this version

  6. 0.10.8 06 Jul 2024

    Nothing published for this version

  7. 0.10.7 28 Apr 2024

    Nothing published for this version

  8. 0.10.6 16 Mar 2024
    Release notes

    Fixed

    • axis_dpad_to_button filter will now properly generate release event when axis value change from -1 to 1 (or 1 to -1) while skipping 0.
    Open source →
  9. 0.10.5 06 Mar 2024
    Release notes

    Added

    • Added vendor_id() and product_id() to Gamepad.
    Open source →
  10. 0.10.4 03 Dec 2023
    Release notes

    Fixed

    • Fixed Gilrs::set_mapping* returning MappingError::NotConnected for connected gamepads.
    • Fix not setting other axis to 0 when in deadzone range.
    Open source →
  11. 0.10.3 11 Nov 2023
    Release notes

    Changed

    • All thread spawned by gilrs are now named. (!102)
    • MSRV is now 1.65.
    Open source →
  12. 0.10.2 23 Apr 2023
    Release notes

    Added

    • Gilrs::next_event_blocking()

    Fixed

    • Parse more SDL specific buttons in mappings
    • Recognize "xinput" UUID in mappings
    • Parse axis ranges in button mappings
    Open source →
  13. 0.10.1 13 Nov 2022
    Release notes

    Added

    • Supporting files and documentation for running the GUI example using Wasm in a browser. See examples/wasm/README.md

    Changed

    • Bundled SDL mappings are now filtered by platform, reducing binary size.

    Fixed

    • GUI example crash when the current platform does not support force feedback.
    Open source →
  14. 0.10.0 06 Nov 2022
    Release notes

    Changed

    • Windows now defaults to using Windows Gaming Input instead of xinput.

      If you need to use xInput you can disable the wgi feature (It's enabled by default) and enable the xinput feature.

      gilrs = {version = "0.10.0", default-features = false, features = ["wgi"]}
      
    • Apps on Windows will now require a focused window to receive inputs by default.

      This is a limitation of Windows Gaming Input. It requires an in focus Window be associated with the process to receive events. You can still switch back to using xInput by turning off default features and enabling the xinput feature.

      Note: Some (Older?) devices may still report inputs without a window but this is not the case for all devices so if you are writing a terminal based game, use the xinput feature instead.

    • Minimal supported rust version is now 1.64.

    Open source →
  15. 0.9.0 22 May 2022
    Release notes

    Changed

    • wasm: web-sys/wasm-bindgen is now used by default, dependency on stdweb and wasm-bindgen feature are removed.
    • Minimal supported rust version is now 1.56.
    • Changed impl Into\<usize\> for GamepadId to impl From\<GamepadId\> for usize

    Fixed

    • wasm: next_event() no longer panic if getGamepads() is not available.
    Open source →
  16. 0.8.2 30 Dec 2021
    Release notes

    Changed

    • Minimal supported rust version is now 1.47
    • axis_dpad_to_btn now also emits ButtonChanged events

    Fixed

    • Fixed overflow when calculating axis value and min/max range was i32::MIN/MAX (@wathiede)
    Open source →
  17. 0.8.1 30 Mar 2021
    Release notes

    Changed

    • Updated bundled mappings
    Open source →
  18. 0.8.0 09 Oct 2020
    Release notes

    Added

    • Jitter, Repeat, GilrsBuilder, and Mapping now implement Default.
    • Errors now implement source().
    • Code now implements Deserialize and Serialize (@theunkn0wn1).
    • Dpad is now supported on macOS (@cleancut).

    Changed

    • Minimal supported version is now 1.40
    • Non exhaustive enums now use #[non_exhaustive] instead of hidden variant.
    • Renamed cargo feature serde to serde-serialize.
    • Improved conversion of axis value to float. Values like 127 (when axis range is 0-255) will now be correctly converted to 0.0.

    Removed

    • Errors now longer implement deprecated methods (source() and description()).
    Open source →
  19. 0.7.4 06 Feb 2020
    Release notes

    Added

    • Added method to stop playing force feedback effect. (@photex)

    Fixed

    • Fixed bug that caused forced feedback effects to never stop. (@photex)
    Open source →
  20. 0.7.3 30 Nov 2019
    Release notes

    Added

    • Added support for serialization and deserialization for Button, Axis and AxisOrButton with optional serde feature (@aleksijuvani).

    Fixed

    • Fixed defaults mappings containing elements that gamepad doesn't have. This also fixes state not working for LeftTrigger button on Windows.
    Open source →
  21. 0.7.2 06 Aug 2019
    Release notes

    Fixed

    • Fixed loading mappings for wrong platform
    Open source →
  22. 0.7.1 04 Mar 2019
    Release notes

    Fixed

    • Compilation on macOS.
    • xinput: Calling set_ff_state() on devices that were never connected.
    • GamepadId was not reexported from private module.
    Open source →
  23. 0.7.0 21 Feb 2019
    Release notes

    Added

    • GamepadId
    • Gilrs::gamepad(id). This function is replacement for Index operator and can return disconnected gamepads.
    • Initial support for macOS (@jtakakura). There are still some functionality missing, check related issues in #58.
    • Wasm support, using stdweb (@ryanisaacg).

    Changed

    • Change Gamepad::uuid -> Uuid to Gamepad::uuid -> [u8; 16]
    • gilrs now uses gilrs-core crate as backend. Because of it, there are some breaking changes to API.
    • Functions that returned &Gamepad now return Gamepad<'_> proxy object.
    • Renamed Gilrs::get(id) to Gilrs::connected_gamepad(id).
    • Moved Gamepad::set_mapping{,_strict}() to Gilrs. These functions now also take gamepad id as additional argument.
    • Minimal supported version is now 1.31.1. The crate can still be build with older rustc, but it may change during next patch release.
    • Instead using usize for gamepad ID, GamepadId is now used.
    • Updated bundled SDL_GameControllerDB.

    Removed

    • All functions that returned &mut Gamepad.
    • Gilrs no longer implements Index and IndexMut operators. Use Gilrs::gamepad(id) instead.
    • Gamepad::status() and Status enum. Gamepad::is_connected() is now sufficient to determine status of gamepad.

    Fixed

    • xinput: Incorrect gamepad ID when more than one gamepad is connected (@DTibbs).
    • Deadzone filter no longer emits additional events. This resulted in emitting more events until values normalized on some, often unrelated (like 0 for axis around 0.5), value.
    • Mappings from environment variable had lower priority than bundled mappings.
    Open source →
  24. 0.6.3 14 Jan 2019

    Nothing published for this version

  25. 0.6.2 12 Jan 2019

    Nothing published for this version

  26. 0.6.1 18 Jul 2018
    Release notes

    Added

    • ev::Code::into_u32() (@rukai).
    • ev::{Button, Axis, AxisOrBtn} now implements Hash (@sheath).

    Changed

    Fixed

    • Various fixes to logging at incorrect log level. Thanks to @fuggles for locating and reporting these issues.
    • Possible panic in Repeat filter.
    • Axis::DPadY was inverted on Linux.
    Open source →
    Release notes

    Added

    • ev::Code::into_u32() (@rukai).
    • ev::{Button, Axis, AxisOrBtn} now implements Hash (@sheath).

    Changed

    • The URL of repository has changed to https://gitlab.com/gilrs-project/gilrs
    • Updated bundled SDL_GameControllerDB.

    Fixed

    • Various fixes to logging at incorrect log level. Thanks to @fuggles for locating and reporting these issues.
    • Possible panic in Repeat filter.
    • Axis::DPadY was inverted on Linux.
    Open source →
  27. 0.6.0 11 Feb 2018
    Release notes

    Added

    • Support for parsing SLD 2.0.6 mappings.
    • ButtonChanged event. It contains value in range [0.0, 1.0].
    • GilrsBuilder::set_axis_to_btn(). It allow to customize on which values ButtonePressed and ButtonReleased are emitted.
    • GilrsBuilder::set_update_state which control whether gamepad state should be updated automatically.
    • ButtonState::value().
    • Mapping::insert_{btn,axis}().
    • Gampead::os_name() and Gamepad::map_name(). (@rukai)
    • GilrsBuilder::add_env_mappings() and GilrsBuilder::add_included_mappings(), allow to configure whether to load mappings from SDL_GAMECONTROLLERCONFIG env and bundled mappings. (@rukai)
    • Gilrs::insert_event().
    • Axis::second_axis() – returns the other axis of gamepad element. For example, this function will return LeftStickX for LeftStickY.

    Removed

    • Mapping no longer implements Index and IndexMut operators. Use Mapping::insert_{btn,axis}() methods to add new mappings.
    • Axis::{LeftTrigger, LeftTrigger2, RightTrigger, RightTrigger2}. All events with these are now button events. ButtonChanged event contains value.
    • Gilrs::gamepad() and Gilrs::gamepad_mut() – use Index operator instead.

    Changed

    • Gilrs now require Rust 1.20.0 or newer.
    • Updated bundled mappings.
    • Renamed Filter::filter to Filter::filter_ev because RFC 2124 added filter method to Option (our Filter is implemented for Option<Event>).
    • Gamepad::deadzone() now returns Option<f32> instead of f32.
    • All axis events are now in range [-1.0, 1.0].
    • NativeEvCode is replaced by ev::Code, a strongly typed struct that also distinguish between axes and buttons.
    • You can now create mappings from any axis to any button.
    • State now tracks floating-point value of buttons.
    • State::value() can now be used to also examine value of buttons.
    • By default, gamepad state is updated automatically. If you customize event filters, you can disable this behaviour using GilrsBuilder::set_update_state.
    • Gilrs::new() and GilrsBuilder::build() now returns Result. Dummy context can still be used, but only if result of failure is unsupported platform.
    • Renamed Gilrs::connected_gamepad() and Gilrs::connected_gamepad_mut() to get() and get_mut().
    • Filter and FilterFn now borrows Gilrs mutably.
    • Windows: Gamepads are now named "Xbox Controller" instead of "XInput Controller". (@rukai)

    Fixed

    • Incorrect ranges for some axes.
    • Deadzone filter should no longer produce values outside of allowed range.
    • When calculating deadzone, the value of second axis is no longer ignored. This fixes situation, when sometimes axis would stay on value small to 0.0, when it should be 0.0 instead.
    • Deadzone threshold was half of what it should be.
    • Linux: Fixed axis value normalization if neither minimal value is 0 nor midpoint is 0. (@scottpleb)
    • Linux: Ensure that axis values are clamped after normalization. (@scottpleb)
    • Linux: Compilation error on architectures with c_char = u8.
    Open source →
    Release notes

    Added

    • Support for parsing SLD 2.0.6 mappings.
    • ButtonChanged event. It contains value in range [0.0, 1.0].
    • GilrsBuilder::set_axis_to_btn(). It allow to customize on which values ButtonePressed and ButtonReleased are emitted.
    • GilrsBuilder::set_update_state which control whether gamepad state should be updated automatically.
    • ButtonState::value().
    • Mapping::insert_{btn,axis}().
    • Gampead::os_name() and Gamepad::map_name(). (@rukai)
    • GilrsBuilder::add_env_mappings() and GilrsBuilder::add_included_mappings(), allow to configure whether to load mappings from SDL_GAMECONTROLLERCONFIG env and bundled mappings. (@rukai)
    • Gilrs::insert_event().
    • Axis::second_axis() – returns the other axis of gamepad element. For example, this function will return LeftStickX for LeftStickY.

    Removed

    • Mapping no longer implements Index and IndexMut operators. Use Mapping::insert_{btn,axis}() methods to add new mappings.
    • Axis::{LeftTrigger, LeftTrigger2, RightTrigger, RightTrigger2}. All events with these are now button events. ButtonChanged event contains value.
    • Gilrs::gamepad() and Gilrs::gamepad_mut() – use Index operator instead.

    Changed

    • Gilrs now require Rust 1.20.0 or newer.
    • Updated bundled mappings.
    • Renamed Filter::filter to Filter::filter_ev because RFC 2124 added filter method to Option (our Filter is implemented for Option<Event>).
    • Gamepad::deadzone() now returns Option<f32> instead of f32.
    • All axis events are now in range [-1.0, 1.0].
    • NativeEvCode is replaced by ev::Code, a strongly typed struct that also distinguish between axes and buttons.
    • You can now create mappings from any axis to any button.
    • State now tracks floating-point value of buttons.
    • State::value() can now be used to also examine value of buttons.
    • By default, gamepad state is updated automatically. If you customize event filters, you can disable this behaviour using GilrsBuilder::set_update_state.
    • Gilrs::new() and GilrsBuilder::build() now returns Result. Dummy context can still be used, but only if result of failure is unsupported platform.
    • Renamed Gilrs::connected_gamepad() and Gilrs::connected_gamepad_mut() to get() and get_mut().
    • Filter and FilterFn now borrows Gilrs mutably.
    • Windows: Gamepads are now named "Xbox Controller" instead of "XInput Controller". (@rukai)

    Fixed

    • Incorrect ranges for some axes.
    • Deadzone filter should no longer produce values outside of allowed range.
    • When calculating deadzone, the value of second axis is no longer ignored. This fixes situation, when sometimes axis would stay on value small to 0.0, when it should be 0.0 instead.
    • Deadzone threshold was half of what it should be.
    • Linux: Fixed axis value normalization if neither minimal value is 0 nor midpoint is 0. (@scottpleb)
    • Linux: Ensure that axis values are clamped after normalization. (@scottpleb)
    • Linux: Compilation error on architectures with c_char = u8.
    Open source →
  28. 0.5.2 30 Dec 2017
    Release notes

    Fixed

    • linux: Fixed compilation on platforms with c_char = u8 (for example ARM).
    Open source →
  29. 0.5.1 12 Nov 2017
    Release notes

    Fixed

    • Fixed compilation errors on recent nightly introduced by addition of filter method to Option. If you want to use filters in your code on nightly, use universal function call syntax – Filter::filter(&ev, &filter, &gilrs) or 0.6 branch (at the moment unreleased).
    Open source →
  30. 0.5.0 24 Sep 2017
    Release notes

    Added

    • Mapping::remove_button() and Mapping::remove_axis().
    • GilrsBuilder for customizing how Gilrs is created.
    • Event filters. See ev::filter module for more info.
    • Gilrs::next_event() - use it with while let loop in your event loop. This allow to avoid borrow checker problems that EventIterator caused.
    • New event – Dropped. Used by filters to indicate that you should ignore this event.
    • New event – ButtonRepeated. Can be emitted by Repeat filter.
    • Axis::{DPadX, DPadY}
    • Gamepad::{button_name, axis_name, button_code, axis_code} functions for accessing mapping data.
    • Gamepad::axis_data, button_data – part of new extended gamepad state.
    • Gamepad::id() – returns gamepad ID.
    • Gilrs::update, inc, counter, reset_counter – part of new extended gamepad state.

    Removed

    • Gilrs::with_mappings() – use GilrsBuilder.
    • Gilrs::poll_events() and EventIterator – use Gilrs::next_event() instead.

    Changed

    • Minimal rust version is now 1.19
    • New gamepad state. Now can store state for any button or axis (previously was only useful for named buttons and axes). Additionally it now also know when last event happened. Basic usage with is_pressed() and value() methods is same, but check out documentation for new features.
    • Gamepad state now must be explicitly updated with Gilrs::update(Event). This change was necessary because filters can change events.
    • Event is now a struct and contains common information like id of gamepad and timestamp (new). Old enum was renamed to EventType and can be accessed from Event.event public field.
    • New force feedback module, including support for Windows. There are to many changes to list them all here, so pleas check documentation and examples.
    • Renamed ff::Error::EffectNotSupported to ff::Error::NotSupported.
    • Button::Unknown and Axis::Unknown have now value of 0.
    • Gamepad::set_mapping() (and _strict variant) now returns error when creating mapping with Button::Unknown or Axis::Unknown. Additionally _strict version does not allow Button::{C, Z} and Axis::{LeftZ, RightZ}.
    • xinput: New values for NativEvCode

    Fixed

    • Panic on unreachable!() when creating mapping with Button::{C, Z, Unknown} or Axis::{LeftZ, RightZ}.
    Open source →
    Release notes

    Added

    • Mapping::remove_button() and Mapping::remove_axis().
    • GilrsBuilder for customizing how Gilrs is created.
    • Event filters. See ev::filter module for more info.
    • Gilrs::next_event() - use it with while let loop in your event loop. This allow to avoid borrow checker problems that EventIterator caused.
    • New event – Dropped. Used by filters to indicate that you should ignore this event.
    • New event – ButtonRepeated. Can be emitted by Repeat filter.
    • Axis::{DPadX, DPadY}
    • Gamepad::{button_name, axis_name, button_code, axis_code} functions for accessing mapping data.
    • Gamepad::axis_data, button_data – part of new extended gamepad state.
    • Gamepad::id() – returns gamepad ID.
    • Gilrs::update, inc, counter, reset_counter – part of new extended gamepad state.

    Removed

    • Gilrs::with_mappings() – use GilrsBuilder.
    • Gilrs::poll_events() and EventIterator – use Gilrs::next_event() instead.

    Changed

    • Minimal rust version is now 1.19
    • New gamepad state. Now can store state for any button or axis (previously was only useful for named buttons and axes). Additionally it now also know when last event happened. Basic usage with is_pressed() and value() methods is same, but check out documentation for new features.
    • Gamepad state now must be explicitly updated with Gilrs::update(Event). This change was necessary because filters can change events.
    • Event is now a struct and contains common information like id of gamepad and timestamp (new). Old enum was renamed to EventType and can be accessed from Event.event public field.
    • New force feedback module, including support for Windows. There are to many changes to list them all here, so pleas check documentation and examples.
    • Renamed ff::Error::EffectNotSupported to ff::Error::NotSupported.
    • Button::Unknown and Axis::Unknown have now value of 0.
    • Gamepad::set_mapping() (and _strict variant) now returns error when creating mapping with Button::Unknown or Axis::Unknown. Additionally _strict version does not allow Button::{C, Z} and Axis::{LeftZ, RightZ}.
    • xinput: New values for NativEvCode

    Fixed

    • Panic on unreachable!() when creating mapping with Button::{C, Z, Unknown} or Axis::{LeftZ, RightZ}.
    Open source →
  31. 0.4.4 16 Jun 2017
    Release notes

    v0.4.4 — 2017-06-16

    Changed

    • Gilrs no longer uses ioctl crate on Linux. Because ioctl was deprecated and all versions yanked, it was causing problems for new builds that didn't have ioctl crate listed in Cargo.lock.
    Open source →
    Release notes

    Changed

    • Gilrs no longer uses ioctl crate on Linux. Because ioctl was deprecated and all versions yanked, it was causing problems for new builds that didn't have ioctl crate listed in Cargo.lock.
    Open source →
  32. 0.4.3 12 Mar 2017
    Release notes

    v0.4.3 — 2017-03-12

    Added

    • You can now iterate over mutable references to connected gamepads using Gilrs::gamepads_mut().

    Fixed

    • Fixed unreachable!() panic on 32bit Linux.
    • Improved converting axes values to f32 when using XInput.
    Open source →
    Release notes

    Added

    • You can now iterate over mutable references to connected gamepads using Gilrs::gamepads_mut().

    Fixed

    • Fixed unreachable!() panic on 32bit Linux
    • Improved converting axes values to f32 when using XInput
    Open source →
  33. 0.4.2 15 Jan 2017
    Release notes

    v0.4.2 - 2017-01-15

    Changed

    • Updated SDL_GameControllerDB to latest revision.
    • Changes in axes values that are less than 1% are now ignored.

    Fixed

    • Fixed multiple axes mapped to same axis name when mappings are incomplete.
    • Values returned with AxisChanged event now have correctly applied deadzones.
    • Linux: Correctly handle event queue overrun.
    Open source →
    Release notes

    Changed

    • Updated SDL_GameControllerDB to latest revision.
    • Changes in axes values that are less than 1% are now ignored.

    Fixed

    • Fixed multiple axes mapped to same axis name when mappings are incomplete.
    • Values returned with AxisChanged event now have correctly applied deadzones.
    • Linux: Correctly handle event queue overrun.
    Open source →
  34. 0.4.1 12 Dec 2016
    Release notes

    v0.4.1 - 2016-12-12

    Fixed

    • Type inference error introduced by generic index in <[T]>::get
    Open source →
    Release notes

    Fixed

    • Type inference error introduced by generic index in <[T]>::get
    Open source →
  35. 0.4.0 11 Dec 2016
    Release notes

    v0.4.0 - 2016-12-11

    Added

    • Gamepad::mappings_source(&self) which can be used to filter gamepads which not provide unified controller layout
    • MappingsSource enum
    • You can now set custom mapping for gamepad with Gamepad::set_mapping(…)
    • Gilrs::with_mappings(&str) to create Gilrs with additional gamepad mappings

    Changed

    • Button and axis events now also have native event codes
    • On Linux, if button or axis is not known, is now reported as Unknown (previously all unknown events have been ignored)
    • More devices are now treated as gamepads on Linux (use mappings_source() to filter unwanted gamepads)
    • Renamed {Gamepad,GamepadState}::is_btn_pressed(Button) to is_pressed(Button)
    • Renamed {Gamepad,GamepadState}::axis_val(Axis) to value(Axis)

    Fixed

    • Integer overflow if button with keyboard code was pressed on Linux
    • Gilrs should no longer panic if there are some unexpected problems with Udev
    • Fixed normalization of axes values on Linux
    Open source →
    Release notes

    Added

    • Gamepad::mappings_source(&self) which can be used to filter gamepads which not provide unified controller layout
    • MappingsSource enum
    • You can now set custom mapping for gamepad with Gamepad::set_mapping(…)
    • Gilrs::with_mappings(&str) to create Gilrs with additional gamepad mappings

    Changed

    • Button and axis events now also have native event codes
    • On Linux, if button or axis is not known, is now reported as Unknown (previously all unknown events have been ignored)
    • More devices are now treated as gamepads on Linux (use mappings_source() to filter unwanted gamepads)
    • Renamed {Gamepad,GamepadState}::is_btn_pressed(Button) to is_pressed(Button)
    • Renamed {Gamepad,GamepadState}::axis_val(Axis) to value(Axis)

    Fixed

    • Integer overflow if button with keyboard code was pressed on Linux
    • Gilrs should no longer panic if there are some unexpected problems with Udev
    • Fixed normalization of axes values on Linux
    Open source →
  36. 0.3.1 23 Sep 2016
    Release notes

    Fixed

    • Fixed compilation error on non-x86_64 Linux
    Open source →
  37. 0.3.0 22 Sep 2016
    Release notes

    Added

    • Gamepad::power_info(&self)
    • ff::Direction::from_radians(f32) and ff::Direction::from_vector([f32; 2])
    • Gilrs::gamepads(&self) which returns iterator over all connected gamepads
    • GamepadState now implements is_btn_pressed(Button) and axis_val(Axis)
    • Gilrs now implements Indexand IndexMut

    Changed

    • Rename Button::Unknow to Button::Unknown
    • Gamepad::name(&self) now returns &str instead of &String
    • Improved dead zone detection
    • Effect::play(&self, u16) now returns Result<(), Error>
    • Linux: Reduced memory usage

    Removed

    • ff::Direction no longer implements From<f32>

    Fixed

    • Buttons west and east are no longer swapped when using SDL2 mappings
    • Linux: infinite loop after gamepad disconnects
    • Linux: SDL2 mappings for gamepads that can also report mouse and keyboard events now should works

    v0.2.0 - 2016-08-18

    Changed

    • Rename Gilrs::pool_events() to Gilrs::poll_events()

    Fixed

    • Linux: Disconnected events are now emitted properly
    • Linux: All force feedback effects are now dropped when gamepad disconnects
    Open source →
  38. 0.2.0 18 Aug 2016

    Nothing published for this version

  39. 0.1.0 17 Aug 2016

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive