# Sdl 2.0.9 released!

**URL:** <https://discourse.libsdl.org/t/sdl-2-0-9-released/25228>\
**Category:** SDL Announcements\
**Created:** [October 31, 2018, 5:30pm UTC](https://discourse.libsdl.org/t/sdl-2-0-9-released/25228 "2018-10-31T17:30:40Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![slouken](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/s/ec9cab/32.png) [@slouken](https://discourse.libsdl.org/u/slouken)\
**Post date:** [October 31, 2018, 5:30pm UTC](https://discourse.libsdl.org/t/sdl-2-0-9-released/25228/1 "2018-10-31T17:30:40Z")

</div>

Thanks to all the people who contributed code and feedback, SDL 2.0.9 is now available!  
[http://www.libsdl.org/download-2.0.php](http://www.libsdl.org/download-2.0.php)

In addition to lots of bug fixes and build improvements, here are the major changes in this release:

General:

- Added a new sensor API, initialized by passing SDL\_INIT\_SENSOR to SDL\_Init(), and defined in SDL\_sensor.h
- Added an event SDL\_SENSORUPDATE which is sent when a sensor is updated
- Added SDL\_GetDisplayOrientation() to return the current display orientation
- Added an event SDL\_DISPLAYEVENT which is sent when the display orientation changes
- Added HIDAPI joystick drivers for more consistent support for Xbox, PS4 and Nintendo Switch Pro controller support across platforms. (Thanks to Valve for contributing the PS4 and Nintendo Switch Pro controller support)
- Added support for many other popular game controllers
- Added SDL\_JoystickGetDevicePlayerIndex(), SDL\_JoystickGetPlayerIndex(), and SDL\_GameControllerGetPlayerIndex() to get the player index for a controller. For XInput controllers this returns the XInput index for the controller.
- Added SDL\_GameControllerRumble() and SDL\_JoystickRumble() which allow simple rumble without using the haptics API
- Added SDL\_GameControllerMappingForDeviceIndex() to get the mapping for a controller before it’s opened
- Added the hint SDL\_HINT\_MOUSE\_DOUBLE\_CLICK\_TIME to control the mouse double-click time
- Added the hint SDL\_HINT\_MOUSE\_DOUBLE\_CLICK\_RADIUS to control the mouse double-click radius, in pixels
- Added SDL\_HasColorKey() to return whether a surface has a colorkey active
- Added SDL\_HasAVX512F() to return whether the CPU has AVX-512F features
- Added SDL\_IsTablet() to return whether the application is running on a tablet
- Added SDL\_THREAD\_PRIORITY\_TIME\_CRITICAL for threads that must run at the highest priority

Mac OS X:

- Fixed black screen at start on Mac OS X Mojave

Linux:

- Added SDL\_LinuxSetThreadPriority() to allow adjusting the thread priority of native threads using RealtimeKit if available.

iOS:

- Fixed Asian IME input

Android:

- Updated required Android SDK to API 26, to match Google’s new App Store requirements
- Added support for wired USB Xbox, PS4, and Nintendo Switch Pro controllers
- Added support for relative mouse mode on Android 7.0 and newer (except where it’s broken, on Chromebooks and when in DeX mode with Samsung Experience 9.0)
- Added support for custom mouse cursors on Android 7.0 and newer
- Added the hint SDL\_HINT\_ANDROID\_TRAP\_BACK\_BUTTON to control whether the back button will back out of the app (the default) or be passed to the application as SDL\_SCANCODE\_AC\_BACK
- Added SDL\_AndroidBackButton() to trigger the Android system back button behavior when handling the back button in the application
- Added SDL\_IsChromebook() to return whether the app is running in the Chromebook Android runtime
- Added SDL\_IsDeXMode() to return whether the app is running while docked in the Samsung DeX

---

<div class="post-metadata">

**Author:** ![theweirdn8](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/t/76d3ee/32.png) [@theweirdn8](https://discourse.libsdl.org/u/theweirdn8)\
**Post date:** [February 18, 2019, 5:22pm UTC](https://discourse.libsdl.org/t/sdl-2-0-9-released/25228/2 "2019-02-18T17:22:54Z")

</div>

Very nice updates.

Just got it working and I feel like my frame rate somehow improved as well…

---

<div class="post-metadata">

**Author:** ![AntTheAlchemist](https://discourse.libsdl.org/user_avatar/discourse.libsdl.org/antthealchemist/32/3894_2.png) [@AntTheAlchemist](https://discourse.libsdl.org/u/AntTheAlchemist)\
**Post date:** [March 28, 2019, 6:06pm UTC](https://discourse.libsdl.org/t/sdl-2-0-9-released/25228/3 "2019-03-28T18:06:02Z")

</div>

The introduction of HIDAPI to Android has raised the minimum API level to 18, since the new java files use api level 18 stuff. This might explain why people are getting the “linker.cpp:1635 could not load library libhidapi.so” error on older Android devices.

Can we please re-think the hidapi stuff? It’s caused some of us a lot of problems. Raising the minimum API to 18 is going to hurt. Can it be an optional component like SDL\_mixer? The original joystick code worked ok.
