ca508e4503
ControllerInterface/Android: Handle input events
...
Android doesn't let us poll inputs whenever we want. Instead, we
listen to input events (activities will have to forward them to the
input backend), and store the received values in atomic variables
in the Input classes. This is similar in concept to how ButtonManager
worked, but without its homegrown second input mapping system.
2023-03-03 22:28:23 +01:00
792cb62195
ControllerInterface/Android: Implement device population
2023-03-03 22:28:23 +01:00
0150f521f7
ControllerInterface/Android: Rip out ButtonManager
...
ButtonManager is very different from how a normal input backend works,
and is making it hard for us to improve controller support on Android.
The following commits will add a new input backend in its place.
2023-03-03 22:28:23 +01:00
74a14c7d1f
ControllerInterface: Fix uninitialized variables in DualShockUDPClient
...
Strangely, this case did not trigger a C26495 warning in Visual Studio's analyzer; instead, I spotted this when using Valgrind.
2023-02-15 19:23:47 -08:00
7fafb00561
InputCommon/XInput2: Fix shadowing warning
2023-02-09 16:23:02 -08:00
e5b91f00b0
Common: Replace StringBeginsWith/StringEndsWith with std equivalents
...
Obsoletes these functions in favor of the standard member functions
added in C++20.
2023-01-24 14:58:20 -05:00
d949aa60bb
Merge pull request #11397 from TellowKrinkle/QuartzMousePos
...
InputCommon:QuartzKB&M: Fix mouse y coordinates
2023-01-02 23:04:12 +01:00
8659de4d71
InputCommon:QuartzKB&M: Fix mouse y coordinates
...
Cocoa uses a different coordinate system from Carbon (Carbon's origin is the top left while Cocoa's is the bottom left)
2022-12-31 23:42:11 -06:00
288fa635f9
InputCommon/XInput2: Changed axis value reading to be more correct
2022-12-26 17:27:48 +00:00
27d596b89c
InputCommon/Xinput: Cleaned up a bit
2022-12-23 22:35:09 +00:00
c3018fdc3b
InputCommon/XInput2: Added an axis output for the scroll wheel
2022-12-23 22:10:28 +00:00
72eadc6520
InputCommon:SDL: Add SDL 2.26 left and right motion inputs
2022-11-24 15:12:07 -06:00
168a49c87f
ControllerInterface: DSU InputBackend implementation.
2022-11-01 21:59:09 -05:00
2e5cd5d519
ControllerInterface: evdev InputBackend implementation.
2022-11-01 21:59:08 -05:00
44a4573303
ControllerInterface: Add InputBackend interface and SDL implementation.
2022-11-01 21:59:08 -05:00
bc4d08047d
Merge pull request #10979 from tellowkrinkle/QuartzWindowSpeed
...
InputCommon:QuartzKB&M: Use KVO to watch window position
2022-10-22 04:55:12 -04:00
51ee05cb35
Android: Use input override system for touch controls
...
This is the first step of getting rid of the controller indirection
on Android. (Needing a way for touch controls to provide input
to the emulator core is the reason why the controller indirection
exists to begin with as far as I understand it.)
2022-10-03 22:04:09 +02:00
26fd4ea361
WiimoteEmu: Update IR camera status from DesiredWiimoteState.
2022-10-02 23:14:35 +02:00
710210365a
Merge pull request #11038 from AdmiralCurtiss/steam-overlay-crash-fix-wgi
...
WGInput: Work around crash with Steam overlay.
2022-09-08 19:03:31 +02:00
b8ca1b2907
InputCommon: Fix deadlock in EmulatedController::UpdateReferences().
2022-09-07 22:37:24 +02:00
67c97a0bf2
WGInput: Work around crash with Steam overlay.
2022-09-07 21:06:26 +02:00
cd407abe34
WGInput: implement error handling
2022-08-27 02:11:27 -07:00
6bc8ab7001
WGInput: use c++/winrt
2022-08-26 23:20:34 -07:00
76d2e47444
ciface/win32: use CM_Register_Notification instead of wnd msgs
2022-08-26 21:59:56 -07:00
588c4bd635
InputCommon:QuarzKB&M: Use view position instead of window position
2022-08-18 16:29:43 -05:00
798b241832
InputCommon:QuarzKB&M: Use KVO to watch window position
...
CGWindowListCreateDescriptionFromArray would block for up to ~1ms, which isn't a great thing to do on the main emulation thread
2022-08-18 16:29:43 -05:00
b96bc4267e
InputCommon: Enable ARC for obj-c++
2022-08-12 02:09:53 -05:00
9d15a1c5a1
Merge pull request #10858 from AdmiralCurtiss/mouse-center-hotkey
...
Add hotkey for centering mouse in render window.
2022-07-26 12:52:33 +02:00
f92541fbd9
StripSpaces: only strip spaces
...
StripWhitespace maintains old behavior
2022-07-25 18:40:12 -07:00
d14bd10cd7
Quartz: Handle mouse centering hotkey.
...
Co-authored-by: Dentomologist <dentomologist@gmail.com >
2022-07-25 01:26:57 +02:00
e0870166ef
XInput2: Handle mouse centering hotkey.
2022-07-25 01:26:56 +02:00
d57d04bb04
DInput: Handle mouse centering hotkey.
2022-07-25 01:26:56 +02:00
4d27022d0e
Add hotkey for centering mouse in render window.
2022-07-25 00:59:47 +02:00
89067e66f9
InputCommon: Get rid of static strings.
2022-07-15 19:53:10 +02:00
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
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
a86fb9b475
Core/WGInput: Use fmt logging and include HRESULT in messages
2022-05-19 12:12:19 -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
b589d720bf
MappingCommon: Fix detection of hotkey and conjunction expressions.
2022-03-16 22:25:04 -05:00
1bc057614e
Move parts of MappingCommon out of DolphinQt
...
Some of the functions in MappingCommon would be useful to use on
mobile in the future.
2022-03-06 14:30:49 +01:00
6e5f4125e3
Use Common::ToLower and Common::ToUpper
2022-01-16 17:00:12 -08:00