src/hidapi/mac


Log

Author Commit Date CI Message
Sam Lantinga aa2e2f48 2022-09-22T18:22:17 Make sure HID devices can be opened before making them available to the application This prevents a number of issues where devices are enumerated but not actually able to be opened, like https://github.com/libsdl-org/SDL/issues/5781. We currently leave the devices open, allowing us to more easily do controller feature detection, protocol negotiation, detect dropped Bluetooth connections, etc. with the expectation that the application is likely to open the controllers shortly.
Sam Lantinga 99e85cc2 2022-09-22T10:10:20 Accidentally reverted https://github.com/libsdl-org/SDL/commit/172865ff137532123ec06177119be163ba1811f5
Sam Lantinga 6cbdc666 2022-09-22T09:05:06 Fixed use of uninitialized 'size' variable (thanks @ozkan!)
Sam Lantinga 910d499c 2022-09-16T09:19:20 Fixed comment typo
Sam Lantinga 172865ff 2022-09-16T09:16:18 Don't enumerate HID devices on macOS if we don't have input monitoring permissions Unfortunately the only way to detect this is to actually try opening a device, so we wait until the application tries, and then stop enumerating afterwards. Fixes https://github.com/libsdl-org/SDL/issues/5781
Sam Lantinga 679582e7 2022-08-25T11:07:20 Fixed crash if there are no devices available
Pierre Wendling 6c536afd 2022-06-27T15:43:17 Fix C89 declaration for macOS modules. Since Clang 14, `-Wdeclaration-after-statement` is enforced on every standard.
Ryan C. Gordon 4fe7b2cb 2022-03-24T11:00:43 static analysis: Fixed several complaints from codechecker. There are still some pending Objective-C specific issues. Reference issue #4600.
Sam Lantinga 09b652b7 2022-03-09T13:54:23 Make sure the string properties are actually strings (thanks Nat!)
Sam Lantinga 14db417e 2022-03-08T21:32:27 Reenable getting the serial number on macOS We filter now on game controllers, so we shouldn't hit the crash bug on random devices that this was working around.
Sam Lantinga c3ca3445 2022-03-08T18:56:49 Prefer HIDAPI on macOS, as that has extended functionality
Cameron Gutman 343fa612 2021-11-20T13:17:59 hid: fix inconsistent indentation
Cameron Gutman db60b271 2021-11-20T13:13:17 hid: Only enumerate IOHIDDevices that are likely to be joysticks Touching HID devices with keyboard usages will trigger a keyboard capture permission prompt on macOS 11+. See #4887 Like the IOKit joystick backend, we accept HID devices that have joystick, gamepad, or multi-axis controller usages. We also allow the Valve VID for the Steam Controller, just like the Windows HIDAPI implementation does.
Sam Lantinga 5b646cd1 2021-11-07T22:58:44 Build hidapi code into SDL as a new public API This prevents conflicts with hidapi linked with applications, as well as allowing applications to make use of HIDAPI on Android and other platforms that might not normally have an implementation available.
Sam Lantinga db18764e 2021-10-01T16:27:59 Use correct relative include path
Sam Lantinga 814285d6 2021-06-23T09:19:02 Workaround for crash on Apple Mac M1 hardware
Sam Lantinga 6de33c09 2021-06-03T09:05:33 Clarify why we're skipping Game Controller framework supported devices in hid.c
Patrick Hogan 28da6c5d 2021-05-27T14:42:03 Have HIDAPI skip MFI supported HID devices on macOS to avoid duplicate devices.
Sam Lantinga 1133ea03 2021-03-22T19:18:57 Fixed crash on macOS when AirPods are connected
Sam Lantinga 43aa1fa9 2020-01-18T11:21:14 Added support for detecting previously unknown Xbox 360 and Xbox One controllers using the HIDAPI driver with libusb and Android
Sam Lantinga 98ce0e50 2019-12-30T11:09:03 Removed unnecessary setlocale() on Mac https://github.com/signal11/hidapi/commit/240bad3b669ad4874c8aa2d68e18e82232d63e35
Cameron Gutman f21e1727 2019-12-20T22:25:49 Use IOHIDManagerRegisterDeviceRemovalCallback() to monitor for HID removal The function we currently use, IOHIDDeviceRegisterRemovalCallback(), often fails on Catalina with a "__CFRunLoopModeFindSourceForMachPort returned NULL" error message. Once a removal callback is missed, we will eventually crash when the joystick is closed attempting to use the invalid IOHIDDeviceRef. https://forums.developer.apple.com/thread/124444
Andrew Eikum 738dff4b 2019-07-25T08:05:13 hidapi: Update repository URLs Upstream hidapi has been re-homed. Update the repo URLs to help guide folks where to contribute fixes.
Andrew Eikum 0e9560ae 2019-07-23T14:41:00 hidapi: Zero out new hid_device_info structs
Sam Lantinga 52e62329 2019-07-17T16:47:19 Fixed build error
Sam Lantinga 1dc24160 2019-07-17T16:47:13 Add linked list of opened HID devices to prevent accessing already freed devices in device removal callback that is sometimes called even after being unregistered
Sam Lantinga b08bdc44 2018-10-26T09:27:31 Don't build SDL_JOYSTICK_HIDAPI by default on iOS If you enable this, you'll need to link with CoreBluetooth.framework and add something like this to your Info.plist: <key>NSBluetoothPeripheralUsageDescription</key> <string>MyApp would like to remain connected to nearby bluetooth Game Controllers and Game Pads even when you're not using the app.</string>
Sam Lantinga 5dfa4043 2018-08-20T21:19:17 Fixed warnings building on Mac OS X 64-bit
Sam Lantinga 4f41f07d 2018-08-09T16:05:48 Added missing files from previous commits