2025763420
Treewide: Adjust order of includes
2021-12-10 14:49:57 -08:00
e149ad4f0a
treewide: convert GPLv2+ license info to SPDX tags
...
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
2021-07-05 04:35:56 +02:00
c238e49119
ControllerInterface: Remove OSX window handle
...
also make it more thread safe (avoid rare deadlock)
and fix it trying to add devices before the CI has init
2021-06-07 11:07:05 +03:00
81092cf7e4
InputCommon: replace SerialInterface log with ControllerInterface
...
where appropriate. SerialInterface was a leftover from the past,
and makes no sense to be used on actual/real controllers.
2021-05-05 00:16:08 +03:00
7e1df34735
rename InputCommon/ControllerInterface/Device to CoreDevice
2021-01-27 14:29:48 -08:00
a5e1415e74
InputCommon: Migrate logging over to fmt
...
Continues the migration of the logging calls over to the fmt capable
ones.
2020-10-23 13:16:18 -04:00
a2a1e04fc9
StringUtil: Use std::string_view more
2019-07-23 14:49:12 +02:00
ec60027f56
InputCommon: Use nested namespace specifiers where applicable
2019-06-17 16:51:41 -04:00
ff972e3673
Reformat repo to clang-format 7.0 rules
2019-05-06 18:48:04 +00:00
80fd01c3c3
InputCommon/OSX: Refactor IOKit controller interface
2019-03-22 14:04:30 +01:00
0f19c4a40f
ControllerInterface: DInput: Update force feedback effects in a thread. This should prevent slowdowns experienced by a handful of users.
2018-12-24 19:40:58 -06:00
7355b5f70d
ControllerInterface: invoke callbacks in AddDevice/RemoveDevice
...
Some backends already cause this to happen, so make it consistent across
systems.
2017-11-10 13:37:41 -08:00
79a646a67d
Prevent multiple HID elements of same usage type on OSX
...
On OSX, iterate the HID device's elements and only store the last of
each type to accommodate for flaky hardware
2017-09-15 19:19:46 +02:00
ef95bf26cb
Implement GamePAd and MultiAxisController detection
2017-08-24 00:31:59 -04:00
3abde44641
formatting cleanup
2017-08-23 00:19:34 -04:00
3cddb62aea
keyboard fixes v2
2017-08-22 12:26:44 -04:00
0df4f7db4f
Depreciate old OSX Keyboard and Mouse
2017-08-21 01:44:03 -04:00
200fb26148
Fix axis not working with Switch Pro controller on macOS
...
Each axis would appear as multiple elements with 0 min/max.
Filter the list of elements using the correct usage page like
done for buttons.
2017-08-01 01:58:30 +02:00
5298328cb1
Add headless support on macOS
2017-04-15 19:34:42 -07:00
ffe20705dd
Merge pull request #4362 from ligfx/osxhotplug
...
ControllerInterface: enable hotplugging on macOS
2016-12-01 00:29:56 -06:00
7ed8fb95c5
ControllerInterface: enable hotplugging on macOS
2016-11-30 22:27:46 -08:00
3e69d066f5
ControllerInterface: replace Reinitialize with RefreshDevices
...
The SDL backend crashes when you close a joystick after SDL_Quit has
been called. Some backends don't need to be shutdown and
re-initialized everytime, we can just ask to enumerate devices again.
2016-11-30 16:07:55 -08:00
b9e4f67d3a
Merge pull request #4405 from xrix4096/mac-unknown-joyaxis
...
Make analog triggers on PS3 controllers accessible on Mac
2016-10-31 13:01:47 +01:00
9da9ba616b
Use the IOHIDElement cookie as a part of the axis name for unknown axis. Previously the 'usage' value was used to identify the axis by name, but this is not unique. For example on a PS3 controller *all* axis other than the well known ones return a usage of '1' so there are 30 or more axis all named "1". This stops things such as analog triggers being usable.
...
Using the element cookie uniquely identifies each axis and allows them to be assigned successfully as controls
2016-10-30 10:36:53 +00:00
f163bd1048
Fix various comment typos
2016-10-24 18:27:49 +02:00
788e19f54d
ControllerInterface: Make the ID assigning code common
...
This makes the device ID assigning code common to all backends, by
moving it to AddDevice() instead of copy-pasting or replicating
the logic in the backends.
Also, to prepare for hotplugging, instead of relying on a name usage
count, the new ID assigning system always starts from ID 0 and tries
to assign the first ID that is not used.
2016-07-14 10:50:53 +02:00
e0839a9478
Strip whitespace from Evdev and OSX controller names.
2016-07-12 14:19:07 +12:00
8678133e87
ControllerInterface: Switch to std::shared_ptr
...
Small cleanup by using std::shared_ptr and getting rid of
ciface.Devices() which just returned the m_devices (which defeats the
point of making m_devices protected).
Incidentally, this should make the code safer when we have
different threads accessing devices in the future (for hotplug?).
A lot of code use Device references directly so there is
no easy way to remove FindDevice() and make those unique_ptrs.
2016-06-25 21:46:39 +02:00
fd29e5c4cc
ControllerInterface: Don't pass m_devices to the backends
...
Previously, the devices vector would be passed to all backends. They
would then manually push_back to it to add new devices. This was fine
but caused issues when trying to add synchronisation.
Instead, backends now call AddDevice() to fill m_devices so that it is
not accessible from the outside.
2016-06-25 13:46:53 +02:00
3570c7f03a
Reformat all the things. Have fun with merge conflicts.
2016-06-24 10:43:46 +02:00
e7ad0fd600
normalize and check upper/lower bounds of hats input on OS X
2016-02-05 16:40:59 -05:00
a30681834c
InputCommon: Use NSNumber numeric literals in Obj-C code
2015-10-02 13:23:46 -04:00
c3332604fa
ControllerInterface: Fix -Winconsistent-missing-override warnings on OSX
2015-09-17 15:15:15 -04:00
700b850acd
Fix misc. clang warnings - mostly complaints about inconsistent use of override.
...
Previously, MacOpenFile only overrode anything on OS X; otherwise it was
just a useless method, which is presumably why it wasn't marked override
in the first place. Address this more sanely by wrapping it in #ifdef
__APPLE__.
2015-06-21 15:42:49 -04:00
30ebb2459e
Set copyright year to when a file was created
2015-05-25 13:22:31 +02:00
cefcb0ace9
Update license headers to GPLv2+
2015-05-25 13:22:31 +02:00
f2787f620e
ControllerInterface: Make UpdateInput / UpdateOutput return void
...
The return values here have never been checked, so it doesn't make sense
to return a value to begin with.
2014-11-28 10:50:45 -08:00
367a42dcfd
ControllerInterface: Implement dummy UpdateInput / UpdateOutputs
...
Make the implementation here a bit easier.
2014-11-28 10:50:45 -08:00
fd39454ad3
Make some OSX-only functions static
...
Gets rid of function prototype warnings.
2014-10-28 08:41:50 -04:00
357c0adc3c
Kill off the wx casts within InputCommon and GLInterface.
...
All because someone didn't actually return the wxWindow handle for the edge case.
2014-09-14 01:07:08 -04:00
6cfc5b9849
InputCommon: Initialize NSDictionaries using literal syntax.
2014-09-13 21:32:33 -04:00
5adbc83453
Change ControlState typedef to double, and change all related floats/doubles to use it.
...
Fixes an off by 1 issue related to double->float->double conversion, and eliminates numerous warnings.
2014-09-03 03:08:09 -04:00
bc14d6966f
InputCommon: Clean up brace placements
2014-08-30 18:06:44 -04:00
d802d39281
clang-modernize -use-nullptr
...
and s/\bNULL\b/nullptr/g for *.cpp/h/mm files not compiled on my machine
2014-03-09 21:14:26 +01:00
2afe215271
Convert all includes to relative paths.
2014-02-18 02:19:10 -05:00
3fd87a7636
Second and final pass of clearing out tabs.
2014-02-17 02:19:41 -05:00
6c4ee1753a
Fix some vertical alignments
...
ie. uses spaces for alignment.
2014-02-16 20:12:05 -05:00
d2038049f5
Replace all include guard ifdefs with "#pragma once"
2014-02-10 18:07:16 -05:00
c6d650c058
ForceFeedback: Add OSX rumble support
2014-02-09 17:01:45 +09:00
34692ab826
Remove unnecessary Src/ folders
2013-12-31 14:03:19 -05:00