e79c7d4985
InputCommon: Don't force-link against SDL2.lib on Windows.
2022-07-13 01:37:05 +02:00
54b4ad8f55
ci/sdl: pump messages for SDL_hidapi so device detection works
2022-07-10 15:39:06 -07:00
ddf83462ac
sdl: enable SDL_HINT_JOYSTICK_THREAD
...
fixes window message pumping
2022-07-10 15:39:06 -07:00
655fb94e61
ci/win32: give the wndclass a unique name
...
other things (like SDL) may try to use "Message"
2022-07-10 15:39:06 -07:00
dd20c7cf78
ci/sdl: re-add the x360 controller block
2022-07-10 15:39:06 -07:00
3f7a2c6d4d
ci/sdl: minor cleanup
2022-07-10 15:39:06 -07:00
ceed42a0ee
Add SDL as a submodule
2022-07-10 15:38:59 -07:00
6cb936d0cf
Add SDL motion input and rumble support
2022-07-10 14:49:49 -07:00
eccf527bf6
Merge pull request #9147 from jordan-woyak/imu-accel-weight-setting
...
WiimoteEmu: Expose IMU pointing accelerometer weight setting.
2022-07-07 23:17:47 +02:00
24498ca315
Merge pull request #10712 from tellowkrinkle/ControllerLocks
...
InputCommon/ControllerEmu: Use more locks
2022-07-05 11:39:48 +02:00
4c409411ed
DolphinQt: Don't show the advanced input settings on the main dialog.
2022-06-26 22:48:13 -05:00
80d9e79cf1
ControllerEmu: Allow settings to be categorized as "advanced". Make "Virtual Notches" and "Gate Size" categorized as such.
2022-06-26 22:42:16 -05:00
643f82539c
ControllerEmu: Expose gate size setting for octagon analog sticks.
2022-06-26 22:33:44 -05:00
23ed611077
Merge pull request #10729 from Pokechu22/libusb-error-wrap
...
Improve libusb error logging
2022-06-17 16:01:46 +02:00
107a928452
Merge pull request #10748 from tellowkrinkle/SDL22Fun
...
InputCommon: SDL 2.0.22 init crash workaround
2022-06-15 18:02:59 +02:00
994210e369
InputCommon: SDL 2.0.22 init crash workaround
...
See https://github.com/libsdl-org/SDL/pull/5598
2022-06-14 21:02:45 -05:00
1fc86cacd7
WiimoteEmu: Expose IMU pointing accelerometer weight setting.
2022-06-13 00:07:00 -05:00
27772e01d9
GCAdapter: Compare with LIBUSB_SUCCESS instead of 0
2022-06-08 15:30:22 -07:00
15cbb5c8f9
Log warnings when LibusbUtils::GetDeviceList fails
2022-06-08 15:29:11 -07:00
6823b4d7a0
GCAdapter: Use LibusbUtils::ErrorWrap in log messages
2022-06-02 19:39:36 -07:00
0d8772ccbe
GCAdapter: Make local variables const where possible
2022-06-02 19:39:36 -07:00
cd9edeacda
GCAdapter: Merge Read logic
2022-06-02 19:39:36 -07:00
9ec65baf46
GCAdapter: Have the read thread control the write thread
...
This was done for Android in 6cc40b1235
.
2022-06-02 19:39:36 -07:00
0fa92694d1
GCAdapter: Exit early if the adapter fails to open on Android
...
This is only so that indentation is consistent with the non-android code.
2022-06-02 19:39:36 -07:00
749a4ad1ef
GCAdapter: Remove check on write size on android
...
It was removed for non-android in 56239d1ae1
, and android already uses a separate thread, so presumably this isn't needed anymore.
2022-06-02 19:39:36 -07:00
27947046af
GCAdapter: Harmonize read/write thread variable names
2022-06-02 19:39:36 -07:00
279888da8c
GCAdapter: Remove unused includes
2022-06-02 19:39:36 -07:00
3ae775e574
GCAdapter: Use determinism hack on Android
...
This hack was added in 8f0cbefbe5
, and the part of it in SI_DeviceGCAdapter is present on Android already, so I don't see any reason why this part doesn't apply to Android.
2022-06-02 19:39:36 -07:00
55922e6d17
GCAdapter: Convert ControllerType to an enum class
2022-06-02 19:39:36 -07:00
682d86f4da
GCAdapter: Fix rumble enabled config on Android
...
I believe the setting already existed in the UI; it just wasn't implemented in GCAdapter_Android.cpp.
2022-06-02 19:39:36 -07:00
36d4ee0939
GCAdapter: Use std::array for controller read and write payloads
2022-06-02 19:39:36 -07:00
dd6592698e
GCAdapter: Merge GCAdapter.cpp and GCAdapter_Android.cpp
...
This is mostly a brainless merge, #ifdef-ing anything that doesn't match between the two while preserving common logic. I didn't rename any variables (although similar ones do exist), but I did change one log that was ERROR on android and NOTICE elsewhere to just always be NOTICE. Further merging will follow.
2022-06-02 19:39:36 -07:00
f9c6eb7b98
InputCommon/ControllerEmu: Use more locks
...
Loading configs while another thread is messing with stuff just doesn't feel like a good idea
Hopefully fixes Wiimote Scanning Thread crashes on startup
2022-05-31 20:17:37 -05:00
580c721c82
cmake: Don't use PCH with Qt6.
2022-05-22 01:19:44 +02:00
a86fb9b475
Core/WGInput: Use fmt logging and include HRESULT in messages
2022-05-19 12:12:19 -07:00
e0afcb3b94
Merge pull request #10540 from nyanpasu64/fix-gcadapter-atomics
...
Remove atomic usage and fix mutex locking in GCAdapter code
2022-04-23 22:04:10 +02:00
12cd81bdb3
GCAdapter: don't call libusb_detach_kernel_driver on apple
2022-04-22 09:56:47 -07:00
5cd3cf9072
GCAdapter: fix retval check of libusb_detach_kernel_driver
2022-04-22 09:56:47 -07:00
978c90845b
GCAdapter: move libusb context teardown last
2022-04-22 09:56:47 -07:00
1c9dfb7bb6
GCAdapter: some macro cleanup
2022-04-22 09:56:47 -07:00
f52d94832e
GCAdapter: set read/write thread names
2022-04-22 07:12:09 -07:00
5fda8ee8ec
Core/WGInput: Dynamically load winrt function addresses.
2022-04-08 03:26:09 +02:00
566dfc1cf4
ControllerInterface: Update sort priorities.
2022-04-03 19:03:44 -05:00
076a262b9e
InputCommon: Add Windows.Gaming.Input to ControllerInterface.
2022-04-03 19:03:35 -05:00
b5a7ae52b5
Fix locking the wrong mutex in GCAdapter_Android.cpp ResetRumble()
...
I am not confident there are no race conditions between s_write_mutex,
s_controller_write_payload_size, and s_controller_write_payload. But
this code should be safer than before.
2022-03-27 22:39:26 -07:00
7616027684
Remove unnecessary atomic usage in GCAdapter_Android.cpp
...
s_controller_write_payload_size needs to remain an atomic because Read()
loads and stores without holding a mutex, Output() stores while holding
s_write_mutex, and ResetRumble() stores while holding s_read_mutex! I'm
pretty sure this code is wrong, specifically ResetRumble().
2022-03-27 22:39:26 -07:00
871b01a5d9
Remove unnecessary atomic usage in GCAdapter.cpp
...
You can safely read or write non-atomic integers on multiple threads,
as long as every thread reading or writing it holds the same mutex
while doing so (here, s_mutex).
Removing the atomic accesses makes the code faster, but the actual
performance difference is probably negligible.
2022-03-27 22:27:57 -07:00
b589d720bf
MappingCommon: Fix detection of hotkey and conjunction expressions.
2022-03-16 22:25:04 -05:00
e10967e918
Merge pull request #10502 from Pokechu22/defer-gcadapter
...
GCAdapter: Defer initialization until MainWindow::InitControllers
2022-03-15 16:00:28 +01:00
37806472e1
GCAdapter: Defer initialization until MainWindow::InitControllers
...
If libusb fails to initialize, an assertion fails, but if that happens before the main window is created, then Dolphin just dies. Now, the panic alert is properly shown and the user can ignore it.
2022-03-10 10:35:45 -08:00