Pokechu22
004dfd1586
Replace uses of cassert with Common/Assert.h
2021-04-02 10:18:18 -07:00
iwubcode
8055919905
InputCommon: Allow for partial gyro mapping; for Free Look, this allows you to only pitch or only yaw
2021-03-17 20:58:33 -05:00
iwubcode
db4b4e40cb
InputCommon / DolphinQt / Core: Add a "RelativeMouse" input which provides the raw delta mouse input
...
Co-authored-by: Jordan Woyak <jordan.woyak@gmail.com>
2021-03-17 20:58:33 -05:00
Léo Lam
9a3e752021
Merge pull request #9558 from iwubcode/dsu-multi-server-avoid-blocking
...
InputCommon: block on DSU servers collectively instead of individually
2021-03-16 10:12:32 +01:00
Dentomologist
486a25dd2b
Touchscreen: Add override specifiers
...
Fix -Winconsistent-missing-override warnings on Android
2021-03-07 10:10:02 -08:00
Dentomologist
1fd332d3b7
ControllerInterface: Fix unused-result warning
...
Add ! before unused variables to 'use' them.
Ubuntu-x64 emits warnings for unused variables because gcc decides
it should ignore the void cast around them. See thread for discussion:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66425
2021-03-07 10:10:02 -08:00
Dentomologist
692aaed60c
FreeLookController: Fix signed/unsigned warning
...
Loop index int i was being compared against GetControllerCount() which
returned a size_t. This was the only place GetControllerCount() was
called from so the change of return type doesn't disturb anything else.
Changing the loop index to size_t wouldn't work as well since it's
passed into GetController(), which takes an int and is called from many
places, so it would need a cast anyway on an already busy line.
2021-03-07 10:09:59 -08:00
iwubcode
dbb0b72cc5
InputCommon: instead of blocking on individual DSU server sockets, block on a selector built up from all server sockets
2021-03-05 12:05:38 -06:00
Léo Lam
59f4164411
Merge pull request #9539 from iwubcode/dynamic_input_tex_more_optimizations
...
InputCommon: dynamic input textures more optimizations
2021-03-02 02:53:22 +01:00
Léo Lam
858f00b641
Merge pull request #9492 from nolange/fix_norandr_build
...
Cleanup X11 and XRANDR Macros
2021-03-01 11:36:39 +01:00
iwubcode
32d584a0f5
InputCommon: reduce number of image loads and texture cache invalidations by only running dynamic input textures once for all controllers
2021-02-27 17:29:48 -06:00
Filoppi
e020b2e8ea
Common: don't call OnConfigChanged() unless it has actually changed
...
DualShock UDP Client is the only place in the code that assumed OnConfigChanged()
is called at least once on startup or it won't load up the setting, so I took care of that
2021-02-26 01:14:00 +02:00
Norbert Lange
29eaf09be4
Cleanup X11 and XRANDR Macros
...
This fixes build with X11 enabled and XRANDR disabled.
2021-02-22 14:30:43 +01:00
iwubcode
55ba1c7c9c
InputCommon: Move initial dynamic input texture configuration logic to a 'specification 1' function and load in a 'specification' attribute that defaults to 1 if not present (with 1 being the only valid value at the moment)
2021-02-19 00:02:15 -06:00
iwubcode
10127a0451
InputCommon: Move DynamicInputTextureData to DynamicInputTextures::Data
2021-02-16 22:43:10 -06:00
iwubcode
28a911ae6b
InputCommon: Move DynamicInputTextureConfiguration to DynamicInputTextures::Configuration
2021-02-16 22:37:59 -06:00
iwubcode
ce7db2e32b
InputCommon: When using dynamic input textures, only call force reload textures once for packs that have multiple configurations
2021-02-11 19:18:38 -06:00
Shawn Hoffman
500a694ca8
msbuild: bundle all dolphin "core" code into single library
2021-01-27 14:29:49 -08:00
Shawn Hoffman
7e1df34735
rename InputCommon/ControllerInterface/Device to CoreDevice
2021-01-27 14:29:48 -08:00
Shawn Hoffman
0be1491ef0
rename ciface::Wiimote to ciface::WiimoteController
2021-01-27 14:29:48 -08:00
Shawn Hoffman
84128d9532
rename Common/File to Common/IOFile
2021-01-27 14:29:48 -08:00
Filippo Tarpini
a5a6ef8512
Fix a couple of typos
...
[committer note: fixed commit message style]
2021-01-05 15:24:21 +01:00
Léo Lam
ee25f03ff9
Merge pull request #9418 from Filoppi/patch-10
...
Fix DualShockUDP not adding/removing devices correctly
2021-01-05 15:15:53 +01:00
Filippo Tarpini
1e4a1bee43
Fix DualShockUDP not adding/removing devices correctly
...
-If adding 2 devices with the same name, they their unique id wouldn't be increased, causing a conflict.
-Removing a device wouldn't actually remove it from the internal devices list because the list of devices had already been updated when going through it.
-It was possible to remove devices belonging to other sources by adding a device with the same name and then removing it.
2021-01-03 21:06:06 +02:00
Filippo Tarpini
8813ba69f5
Fix Quartz cursor going to +infinite if the window size was 0
2021-01-02 19:55:19 +02:00
Filippo Tarpini
5a5c815ff0
Fix DInput cursor going to +infinite if the window size was 0
2021-01-02 18:33:13 +02:00
Filippo Tarpini
75f35393c3
Fix XInput2 cursor going to +infinite if the window size was 0
2021-01-02 18:30:14 +02:00
seth
00ec25d520
InputCommon: Fix callback dispatch deadlock
...
Make sure m_is_populating_devices is true when a WM_INPUT_DEVICE_CHANGE
event is received directly on the ciface thread, so that callbacks do
not occur while removing devices. This breaks a hold-and-wait deadlock
between the ciface thread and the CPU thread when using emulated
Wiimotes.
Co-authored-by: brainleq <brainleq@users.noreply.github.com>
Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
2020-12-13 00:30:27 +00:00
Léo Lam
fd5c69deca
Merge pull request #9289 from AdmiralCurtiss/simple-png-api-write
...
Use Simplified libpng API for writing PNGs.
2020-12-11 10:24:16 +01:00
iwubcode
39e78ce873
InputCommon: fix dynamic input textures being not generated when the key or device isn't mapped
2020-12-05 17:22:57 -06:00
Admiral H. Curtiss
33c1a5b941
InputCommon: Use Common::SavePNG() to write images.
2020-11-26 23:55:05 +01:00
Léo Lam
3891ac2682
Merge pull request #9232 from AdmiralCurtiss/show-result-value-in-expression-editor
...
Qt/IOWindow: Show result value in expression editor.
2020-11-26 01:30:12 +01:00
Léo Lam
9efc81ae98
Fix variable shadowing warnings
2020-11-21 02:08:09 +01:00
JosJuice
52c615f1b1
Remove a redundant i18n comment
2020-11-17 18:23:27 +01:00
JosJuice
9a01c3fb9f
Use positional arguments in all translatable fmt strings
...
We want to use positional arguments in translatable strings
that have more than one argument so that translators can change
the order of them, but the question is: Should we also use
positional arguments in translatable strings with only one
argument? I think it makes most sense that way, partially
so that translators don't even have to be aware of the
non-positional syntax and partially because "translatable
strings use positional arguments" is an easier rule for us
to remember than "transitional strings which have more than
one argument use positional arguments". But let me know if
you have a different opinion.
2020-11-16 13:28:11 +01:00
Lioncash
d8e1921b57
InputCommon: Migrate over to fmt-capable panic alerts
...
Continues the migration over to fmt.
2020-11-12 02:29:26 -05:00
Admiral H. Curtiss
cae741584b
InputCommon: Return error, if any, from ControlReference::SetExpression().
2020-11-08 01:04:33 +01:00
Nick Michael
55dd3d7337
Virtual Notch settings and UI for octagonal stick
2020-11-03 22:06:27 +00:00
Lioncash
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
LC
de96fe0860
Merge pull request #9162 from jordan-woyak/quaternion
...
Replace stateful rotational matrices with quaternions.
2020-10-21 17:34:11 -04:00
Léo Lam
97de366b0f
Merge pull request #9160 from jordan-woyak/xinput2-stuck-keys
...
Linux/XInput2: Fix keys being stuck pressed on focus loss.
2020-10-21 20:47:32 +02:00
Lioncash
faf509e315
ExpressionParser: Add missing <functional> include
...
Unbreaks Windows CMake builds.
2020-10-20 16:18:32 -04:00
Léo Lam
f653bd7559
Merge pull request #9142 from jordan-woyak/expose-fov
...
WiimoteEmu: Expose IR camera FOV to adjust IMU pointing sensitivity.
2020-10-20 14:32:02 +02:00
Léo Lam
fc3b474cce
Merge pull request #8318 from iwubcode/dynamic_input_textures
...
InputCommon: Dynamic Input Textures
2020-10-20 02:10:29 +02:00
Léo Lam
911704611e
Merge pull request #9096 from jordan-woyak/calibration-cleanup
...
ControllerEmu: Improve and simplify UpdateCalibrationData.
2020-10-20 02:01:16 +02:00
Jordan Woyak
1dae834c62
WiimoteEmu: Tweak IMUCursor total yaw setting tool-tip.
2020-10-19 17:08:02 -05:00
Jordan Woyak
09431635f3
InputCommon/WiimoteEmu: Replace stateful rotational matrices with quaternions.
2020-10-19 16:33:55 -05:00
Jordan Woyak
bbb12a7560
Linux/XInput2: Fix keys being stuck pressed on focus loss.
2020-10-19 11:46:01 -05:00
iwubcode
4fff04db3c
Core: Load custom textures after inputs has been loaded and avoid sending force texture reload during startup for dynamic textures. This ensures that custom texture loading only happens once and users don't see any weird flashes on startup
2020-10-03 17:10:36 -05:00
iwubcode
fd3af4c5d3
InputCommon: Introducing the "Dynamic Input Texture". Configuration links an emulated input action to an image based on what host key is defined for that emulated input. Specific regions are called out in configuration that mark where to replace an input button with a host key image.
2020-10-03 17:10:35 -05:00
JMC47
ebdcddfcd0
Merge pull request #9120 from JosJuice/controller-defaults
...
Fix controller defaults being empty on fresh run
2020-09-29 18:38:11 -04:00
JosJuice
623340bbbb
Fix controller defaults being empty on fresh run
...
A very early call to Config::Save is now creating empty
controller INI files.
https://bugs.dolphin-emu.org/issues/12283
2020-09-29 21:49:22 +02:00
Jordan Woyak
0295d470b1
ControllerEmu: Increase "IMUPointer" "Total Yaw" default value to match that of regular "Point" settings.
...
Removed "Total Yaw" from included Wii remote input profile to take on the default value.
2020-09-28 18:09:34 -05:00
Jordan Woyak
f766c89a08
ControllerEmu: Increase Total Yaw/Pitch default values to compensate for new FOV and to reach screen edges in the Wii Menu.
2020-09-28 18:09:34 -05:00
Jordan Woyak
f9280d0f66
ControllerInterface/Wiimote: Add "IR Distance" input providing a calculated distance from sensor bar in meters.
2020-09-28 18:09:34 -05:00
Jordan Woyak
431eb4d60d
ExpressionParser: Improve hotkey suppression logic. Allow activation with simultaneous press of modifier and final input.
2020-09-25 22:51:33 -05:00
Jordan Woyak
44927da420
ExpressionParser: Replace ScopeGuard with custom deleter unique_ptr.
2020-09-25 22:51:33 -05:00
Jordan Woyak
48b76ff90f
InputCommon: Improve input detection to produce buton combinations.
2020-09-25 22:51:32 -05:00
Jordan Woyak
d8ad8c3861
InputCommon: Make hotkeys and input detection aware of Ctrl -> L_Ctrl / R_Ctrl hierarchy.
2020-09-25 20:29:18 -05:00
Jordan Woyak
aae913fbc6
InputCommon: Clean up modifier ignoring logic.
2020-09-25 20:29:18 -05:00
Jordan Woyak
f015c99a51
ControllerInterface: Add platform consistent names for modifier keys.
2020-09-25 20:29:18 -05:00
Jordan Woyak
d2729df281
ExpressionParser: Allow duplicate and superset modifier hotkeys to function.
2020-09-25 20:29:18 -05:00
Jordan Woyak
b3acc7403f
InputCommon: Support detecting combinations of inputs. (Hotkeys)
2020-09-25 20:29:18 -05:00
Jordan Woyak
e6ba495486
ExpressionParser: Suppress inputs when hotkey modifiers are pressed.
2020-09-25 20:29:18 -05:00
Jordan Woyak
52547379c9
ExpressionParser: Add Hotkey syntax.
2020-09-25 20:29:18 -05:00
Jordan Woyak
50b5224d06
Merge pull request #8840 from Techjar/evdev-combining-phys
...
ControllerInterface: Combine evdev devices with the same physical location in addition to unique ID
2020-09-20 09:28:09 -05:00
Jordan Woyak
0ca73355a8
ControllerEmu: Improve and simplify UpdateCalibrationData.
2020-09-19 08:40:55 -05:00
JMC47
4f1f849c9d
Merge pull request #8985 from jordan-woyak/btemu-cleanup
...
BTEmu/Wiimote: Fixes and Cleanups.
2020-09-14 02:09:27 -04:00
Techjar
8423f848d0
ControllerInterface: Combine evdev devices with the same physical location in addition to unique ID
2020-09-08 18:52:15 -04:00
Ryan Meredith
acd717ffae
GCAdapter_Android: Minor cleanup
2020-08-26 16:40:22 -04:00
Shawn Hoffman
6ef9d70701
name some threads
2020-08-22 17:22:07 -07:00
Shawn Hoffman
2f47f486af
msbuild: re-enable standalone vcxproj processing
2020-08-22 16:17:50 -07:00
Shawn Hoffman
390f509bbf
windows: disable C4200 directly in libusb.h
2020-08-22 16:17:50 -07:00
Shawn Hoffman
94bf48b67c
msbuild: refactor stuff out of project files (for dolphin)
2020-08-22 16:17:50 -07:00
Jordan Woyak
13ee6bd7bb
BTEmu/Wiimote: Cleanups/Fixes.
2020-08-16 11:38:13 -05:00
Tillmann Karras
d2b06f4786
Fix various -Wshadow warnings
2020-08-08 21:45:03 +01:00
Tilka
f17b5dd41b
Merge pull request #8804 from iwubcode/dsu-improvements
...
DolphinQt / InputCommon - Support multiple DSU servers
2020-08-08 20:45:57 +01:00
Admiral H. Curtiss
2281cde28b
InputCommon: Add a handful of math functions to the expression parser.
2020-08-02 22:09:09 +02:00
LC
487cd7abd9
Merge pull request #8905 from JosJuice/jni-encoding
...
Android: Use correct encoding when converting strings
2020-07-18 22:13:14 -04:00
Filip Gawin
0ede5d1537
Use range loop (if possible)
2020-07-18 18:29:16 -05:00
iwubcode
97c9cf3e21
DolphinQt / InputCommon - add DSU string validator to avoid crashes, limited backwards compatibility support
2020-07-17 14:53:39 -05:00
iwubcode
58aa0150e1
DolphinQt / InputCommon: Support multiple DSU servers
2020-07-17 14:53:39 -05:00
LC
4d36f6a5b0
Merge pull request #8936 from jordan-woyak/wiimote-extension-calibration-fix
...
ControllerInterface/Wiimote: Provide fallback values for extensions with bad calibration.
2020-07-12 12:46:15 -04:00
Jordan Woyak
d9e7d0514c
WiimoteEmu: Allow writes of the i2c bus to play speaker data.
2020-07-11 21:19:16 -05:00
Jordan Woyak
5299e902aa
ControllerInterface/Wiimote: Provide fallback values for extensions with bad calibration data.
2020-07-11 19:55:14 -05:00
Jordan Woyak
b350d3cca3
InputCommon/GCAdapter: Unbreak Mayflash GCAdapters by allowing libusb_control_transfer call to fail.
2020-07-09 17:17:44 -05:00
JosJuice
15d9fab0bb
Common: Rename UTF16ToUTF8
...
This function does *not* always convert from UTF-16. It converts
from UTF-16 on Windows and UTF-32 on other operating systems.
Also renaming UTF8ToUTF16 for consistency, even though it
technically doesn't have the same problem since it only was
implemented on Windows.
2020-07-08 14:51:35 +02:00
LC
87287181dd
Merge pull request #8907 from JosJuice/android-overlay-stick-gate
...
Android: Use octagonal stick gate in overlay
2020-07-08 08:50:47 -04:00
LC
4c50eadf34
Merge pull request #8908 from jordan-woyak/wiimote-battery-hax
...
WiimoteCommon: Tweak battery level math.
2020-07-08 08:46:58 -04:00
Jordan Woyak
f2fd5c7f90
InputCommon/GCAdapter: Fix offbrand "GCAdapters" with a libusb_control_transfer call.
2020-07-07 14:45:19 -05:00
Jordan Woyak
d382c6bab9
WiimoteCommon: Tweak battery level math.
2020-06-28 19:40:26 -05:00
JosJuice
db75509ec5
Android: Enfore correct stick gate in overlay
...
Currently, the touch controller overlay uses a square gate for
sticks. This commit changes that so that it instead uses the
stick gate configured in the INI, which ensures that the values
sent to the core are appropriately scaled regardless of what
is configured in the INI and makes the overlay look nicer
if the INI is set to a stick gate that matches the graphics.
2020-06-29 01:20:02 +02:00
Connor McLaughlin
2488e4a587
Merge pull request #8795 from WamWooWam/master
...
InputCommon: Use the Window handle when initializing DirectInput.
2020-05-10 19:16:15 +10:00
Pierre Bourdon
daf1c30a94
GCAdapter: add libusb error logging on reads/writes
2020-05-10 09:26:49 +02:00
Thomas May
76ae1d4070
Apply fixes to all platforms
2020-05-09 22:35:20 +01:00
Thomas May
78e8ccea6d
Update ControllerInterface.cpp
2020-05-06 01:30:49 +01:00
Léo Lam
19da101164
Remove redundant Config prefix from ConfigInfo/ConfigLocation
...
Both structs are already in the Config namespace.
2020-05-02 14:40:14 +02:00
Léo Lam
88ae4c7914
Merge pull request #8729 from JosJuice/android-touch-ir-default
...
Android: Use touch emulation of IR by default
2020-04-27 17:56:01 +02:00
JosJuice
18a4afb053
Android: Use touch emulation of IR by default
...
While having motion control emulation of IR enabled by default
makes sense in situations like using a DualShock 4 on a PC,
Android has the additional option of touch emulation of IR
which seems to be better liked, and the default value which
was chosen with PC in mind was carried over to Android
without any particular consideration. This change disables
motion control emulation of IR by default on Android only.
2020-04-27 17:02:53 +02:00
Léo Lam
9d44af4c31
Merge pull request #8696 from howard0su/cleanup_shadow
...
Cleanup warnings of -Wmissing-declarations
2020-04-27 15:33:01 +02:00