Jordan Woyak
ccdfa43a3e
HW/WiimoteEmu: Fix Classic Controller triggers.
2020-02-26 15:40:58 -06:00
Jordan Woyak
6b109bd2a6
DolphinQt: Tweak indicator raw-input/input-shape color for better contrast in some dark themes.
2020-02-24 16:26:28 -06:00
Jordan Woyak
122984b46e
DolphinQt: Eliminiate redundant swing indicator logic.
2020-02-24 16:26:28 -06:00
Jordan Woyak
d80fd13b17
DolphinQt: Clean up mapping indicator code and draw lines on "pixel centers".
2020-02-24 16:26:26 -06:00
Jordan Woyak
f79ca680cb
DolphinQt: Eliminate redundant cursor indicator logic.
2020-02-24 16:25:06 -06:00
Jordan Woyak
38f36be9ae
DolphinQt: Break mapping indicators into separate classes. Ensure "state lock" is held on redraw.
2020-02-24 16:25:06 -06:00
Jordan Woyak
7accd9825f
InputCommon: Remove racy UpdateInput call in DetectInput.
2020-02-24 16:25:06 -06:00
Jordan Woyak
1a3b4d91bf
InputCommon: Mark GetStateLock with [[nodiscard]] and fix discarding calls.
2020-02-24 16:25:06 -06:00
Jordan Woyak
da12f3eebc
InputCommon: Constify Device::Input::IsDetectable function.
2020-02-22 10:27:43 -06:00
Jordan Woyak
70ac9ad2e6
InputCommon: Remove Wii Remote real-time calibration of M+ in favor of functionality provided by ControllerEmu.
2020-02-17 16:14:03 -06:00
Jordan Woyak
58448d74c5
InputCommon: Add real Wii Remote support to ControllerInterface. Add option to connect additional Wii Remotes.
2020-02-17 16:14:01 -06:00
Jordan Woyak
4176cc77e1
InputCommon/ControllerInterface: Make devices mutex recursive so RemoveDevice can be used within UpdateInput.
2020-02-17 15:58:06 -06:00
Jordan Woyak
5af2081c75
Core/WiimoteEmu: Add functions to Nunchuk, Classic Controller, and MotionPlus extensions to get/set data without duplicate bithacks everywhere.
2020-02-17 15:57:58 -06:00
Jordan Woyak
8343dadd58
InputCommon: Add types to ControllerEmu that represent raw controller inputs and calibration data to calculate normalized input values.
2020-02-17 15:57:43 -06:00
Jordan Woyak
259a7191d2
Common: Add additional Vector operations.
2020-02-17 15:57:43 -06:00
Jordan Woyak
1e652d7d34
InputCommon: Add calibration functionality to IMUGyroscope.
2020-02-17 15:57:43 -06:00
Jordan Woyak
9efcd08ea3
MathUtil: Add RunningMean/RunningVariance classes.
2020-02-17 15:57:43 -06:00
Jordan Woyak
82a3aa5ff6
InputCommon: Add "Dead Zone" setting to raw gyro inputs.
2020-02-17 15:57:43 -06:00
Jordan Woyak
47877ecf2c
InputCommon: Clean up creation of inputs.
2020-02-09 19:08:26 -06:00
Jordan Woyak
53f2e275af
InputCommon: Only update setting expressions when the input gate is enabled.
2020-02-09 18:42:42 -06:00
Jordan Woyak
f07457b6cc
InputCommon: Eliminate some duplicated button threshold logic.
2020-02-09 10:37:18 -06:00
Jordan Woyak
4f47cccd9f
Cleanup: Use std::abs instead of abs.
2020-02-08 18:21:14 -06:00
Jordan Woyak
0a1634bedf
InputCommon: Allow Wii remote extension to be set with an input expression.
2020-02-08 16:03:13 -06:00
Jordan Woyak
e7400cafd2
InputCommon: XInput cleanups.
2020-02-08 15:51:02 -06:00
Jordan Woyak
86e8745169
InputCommon: Expose XInput battery level as an input.
2020-02-08 15:03:56 -06:00
Jordan Woyak
e8152b700f
InputCommon: Allow controller settings specified with input expresions.
2020-02-08 14:01:55 -06:00
Jordan Woyak
f94726068d
DolphinQt: Kill some unused member variables.
2020-02-08 10:52:06 -06:00
Jordan Woyak
9a34091b8b
DolphinQt: Fix stereoscopy hotkeys.
2020-02-07 15:47:40 -06:00
Jordan Woyak
b9f34bc822
DolphinQt: setTabKeyNavigation(false) on QTableWidget and QTableView.
2020-02-06 20:48:45 -06:00
Jordan Woyak
b1a71b959b
DolphinQt/Mapping: Change "Dead Zone" color from shadow color of palette to a transparent black or white depending on theme. Tweak order of "shake" indicator axis colors so red is more often shown.
2020-02-04 16:08:51 -06:00
Jordan Woyak
d6515eee41
WiimoteEmu: Fix default IMU accelerometer mappings.
2020-02-01 23:32:09 -06:00
Jordan Woyak
5e3472eba9
Common/Analytics: Replace mutex with shared_mutex and minor cleanups.
2020-01-25 14:04:00 -06:00
Jordan Woyak
c08671c4ce
VideoCommon/OSD: Process OSD messages even when they are disabled.
2020-01-24 11:00:58 -06:00
Jordan Woyak
b92f6480a0
InputCommon: Make "Cursor" inputs aware of the rendered aspect ratio.
2020-01-24 09:20:41 -06:00
Jordan Woyak
732032cdb2
Common/Core: Minor rvalue reference related cleanups.
2020-01-23 22:58:23 -06:00
Jordan Woyak
83b9a11362
Update Readme.md to remove mention of Vista.
...
Qt no longer supports Vista.
https://doc.qt.io/qt-5.12/windows.html
Dolphin fails to run on Vista.
https://bugs.dolphin-emu.org/issues/11961
2020-01-20 17:46:57 -06:00
Jordan Woyak
a61dff67da
InputCommon: List IMUAccelerometer's Up/Down inputs first for consistency.
2020-01-18 13:56:11 -06:00
Jordan Woyak
b416389248
Core/DolphinQt: Fix IR Sensitivity slider.
2020-01-14 17:08:21 -06:00
Jordan Woyak
f5d9b78a3c
DolphinQt: Properly hide Wii remote extension motion tabs when no extension is selected.
2020-01-13 18:34:04 -06:00
Jordan Woyak
6106f780a7
ControllerInterface/DSUClient: Eliminate m_accl/m_gyro state by accessing the pad data directly like every other input.
2020-01-13 17:35:33 -06:00
Jordan Woyak
e2d5c92c76
ControllerInterface: Remove and re-add device when combining nodes.
2020-01-13 16:50:58 -06:00
Jordan Woyak
aabe8d2ccd
ControllerInterface: Don't consider the empty string a valid unique ID.
2020-01-13 16:50:58 -06:00
Jordan Woyak
ac907ef977
ControllerInterface: Combine evdev devices with the same unique ID.
...
This works around Linux drivers for DS4 (Playstation 4) controllers splitting the device into three separate event nodes which makes configuration difficult.
To prevent collisions of input names in combined devices more descriptive names are now used when possible.
2020-01-13 16:50:56 -06:00
Jordan Woyak
2b9fa0597a
ControllerInterface: Minor DSU client device cleanups.
2020-01-13 16:32:02 -06:00
Jordan Woyak
f0534cabc6
ControllerInterface: Exposse DSU client battery level as an input.
2020-01-13 16:29:24 -06:00
Jordan Woyak
d9bd714143
WiimoteEmu: Nunchuk and Classic Controller calibration accuracy improvements.
2020-01-12 09:48:37 -06:00
Jordan Woyak
0aacf3a627
WiimoteEmu: Make the "Total Yaw" setting work again.
2020-01-09 13:11:13 -06:00
Jordan Woyak
956339df4e
Core/WiimoteReal: Make wiimote source type an enum class and add Get/SetWiimoteSource functions. Add connected real Wii Remotes to a pool when a slot is not available.
2020-01-05 10:15:22 -06:00
Jordan Woyak
0e8d4cb6ac
StringUtil: Make TryParse of floats handle comma and dot decimal separators.
2020-01-04 07:19:15 -06:00
Jordan Woyak
2a9a04a1ec
HW: Add ticks to default mappings that are valid numeric literals.
2020-01-03 22:08:49 -06:00
Jordan Woyak
b505004d61
Core/GeckoCode: Fix DownloadCodes function assuming HTTP data is null terminated.
2020-01-03 20:14:10 -06:00
Jordan Woyak
723115b7b6
WiimoteEmu: Allow Recenter button to adjust the pitch.
2020-01-03 18:08:45 -06:00
Jordan Woyak
72c2be52ed
WiimoteEmu: Clean up ComplementaryFilter math.
2020-01-03 16:16:26 -06:00
Jordan Woyak
120c6dc850
DolphinQt: Fix accelerometer indicator math.
2020-01-03 12:34:11 -06:00
Jordan Woyak
540a3ce665
DolphinQt: Use FromQuaternion for a more accurate gyro indicator.
2020-01-02 15:46:18 -06:00
Jordan Woyak
8ab3694f51
Common: Add Matrix33::FromQuaternion.
2020-01-02 15:16:37 -06:00
Jordan Woyak
282470e312
DolphinQt: Fix accelerometer mapping indicator flipped X axis.
2019-11-17 16:41:06 -06:00
Jordan Woyak
4d24f160e3
WiimoteEmu: Minor accuracy fixes.
2019-11-10 20:38:21 -06:00
Jordan Woyak
0c57887839
evdev: fix bad integer division.
2019-11-10 10:10:37 -06:00
Jordan Woyak
e85e51e5ce
HW/WiimoteReal: Replace invalid select call with poll.
2019-11-09 19:22:58 -06:00
Jordan Woyak
59ebaed81c
HW/WiimoteReal: Remove an old comment. We block infinitely now.
2019-11-09 18:45:09 -06:00
Jordan Woyak
1180c231a6
InputCommon: Detect when evdev exposes acceleration/gyroscope data.
2019-11-09 13:34:29 -06:00
Jordan Woyak
8ef25ddd84
DolphinQt: Add accelerometer/gyroscope mapping indicators.
2019-11-09 09:59:45 -06:00
Jordan Woyak
a6b3a2cd4f
DolphinQt: Hide unused buttons in the advanced mapping dialog.
2019-11-08 17:47:19 -06:00
Jordan Woyak
1e028025e5
Common: Add additional Matrix/Vec functions.
2019-11-08 15:46:45 -06:00
Jordan Woyak
85ceb37ccd
InputCommon: Make the "input gate" not racey.
2019-11-06 16:31:02 -06:00
Jordan Woyak
32cf4b76be
DolphinQt: Fix tooltip of output mapping buttons.
2019-11-03 18:20:08 -06:00
Jordan Woyak
1bdf43dd78
DolphinQt: Fix spacebar not activating output mapping buttons.
2019-11-03 18:17:51 -06:00
Jordan Woyak
9d18402d07
DolphinQt: Make HotkeyScheduler call UpdateInput when hotkeys are disabled.
2019-10-26 10:03:57 -05:00
Jordan Woyak
1fe44238b1
ExpressionParser: Add XOR operator.
2019-10-20 09:51:52 -05:00
Jordan Woyak
9e8181e80e
Core/HW: Fix some explicitly defaulted but implicitly deleted warnings.
2019-10-19 16:35:03 -05:00
Jordan Woyak
0d254d9cb8
StringUtil: Require TryParse of float types to use the entire string.
2019-10-18 19:56:48 -05:00
Jordan Woyak
40d15980c5
DolphinQt/Mapping: Explicitly specify parents of conditionally added widgets to prevent memory leaks.
2019-10-18 12:26:03 -05:00
Jordan Woyak
fa8cbd83e2
Qt/Mapping: Show current input states in advanced dialog.
2019-10-18 12:19:16 -05:00
Jordan Woyak
b120b08726
ControllerEmu: Clamp results of trigger/slider states to prevent integer overflow later on.
2019-10-15 15:35:07 -05:00
Jordan Woyak
d2c1dbef16
CMake: Enable SDL by default on macOS.
2019-10-14 20:51:08 -05:00
Jordan Woyak
24a36eb027
NetPlay: Allow Wii Remote buffer size to decrease by dropping reports.
2019-10-13 13:03:57 -05:00
Jordan Woyak
7295458c11
ExpressionParser: Make Lexer ctor explicit and move argument.
2019-10-12 12:28:19 -05:00
Jordan Woyak
72302d9c42
ExpressionParser: Add support for /* */ style comments.
2019-10-12 11:41:02 -05:00
Jordan Woyak
b4e2b3cae3
ControllerEmu: Don't clear expression variables on references update. Hotplug would make that problematic.
2019-10-11 19:42:49 -05:00
Jordan Woyak
4d41bd64c8
ExpressionParser: Show error message with expected arguments.
2019-10-11 19:38:18 -05:00
Jordan Woyak
b57178d246
ExpressionParser: Remove ! character from function syntax. Remove unused serialization functions.
2019-10-11 18:12:18 -05:00
Jordan Woyak
7912dc57dd
ExpressionParser: Remove !while and add optional 2nd argument to !smooth.
2019-10-11 18:12:18 -05:00
Jordan Woyak
ca7ce67450
ExpressionParser/DolphinQt: Added parse results to UI.
2019-10-11 18:12:18 -05:00
Jordan Woyak
c8b2188e19
DolphinQT: Add syntax highlighting from tokenizer data.
2019-10-11 18:12:18 -05:00
Jordan Woyak
e3cf2ae0d4
DolphinQT/IOWindow: Add combo boxes to insert the new operators and functions so people are semi-aware of them. Fixed the "Apply" button. Display an error message on expression parse error.
2019-10-11 18:12:18 -05:00
Jordan Woyak
5cb1248612
ExpressionParser: Clean up some redundant using-declarations and wrong comments.
2019-10-11 18:12:18 -05:00
Jordan Woyak
fae8b15db1
ExpressionParser: Add !pulse function that evaluates to 1.0 for N seconds for each press.
2019-10-11 18:12:18 -05:00
Jordan Woyak
b5b43f8342
ExpressionParser: Add relative input function.
2019-10-11 18:12:18 -05:00
Jordan Woyak
08b291b0f9
ExpressionParser: Fix timer function with negative values.
2019-10-11 18:12:18 -05:00
Jordan Woyak
18b5120441
ExpressionParser: Add !tap function which activates after X (defaults to 2) taps within Y seconds.
2019-10-11 18:12:17 -05:00
Jordan Woyak
f2e499d587
ExpressionParser: Add !hold function that activates after input is held for N seconds.
2019-10-11 18:12:17 -05:00
Jordan Woyak
9e536382c4
ExpressionParser: Add function to smooth inputs.
2019-10-11 18:12:17 -05:00
Jordan Woyak
bbd6b1848f
ExpressionParser: Add deadzone function.
2019-10-11 18:12:17 -05:00
Jordan Woyak
6a2096c419
ExpressionParser: Add optional 2nd argument to toggle function which clears state.
2019-10-11 18:12:17 -05:00
Jordan Woyak
fd07ae8cec
ExpressionParser: Move FunctionExpression type definitions into another file.
2019-10-11 18:12:16 -05:00
Jordan Woyak
d4f9b8c4ef
ExpressionParser: Allow unary functions to be used without parens around the argument. e.g. !Up
2019-10-11 17:31:09 -05:00
Jordan Woyak
2a377e35ed
ExpressionParser: Make function names case sensitive.
2019-10-11 17:31:09 -05:00
Jordan Woyak
2b0297489f
ExpressionParser: Rename some functions and return a syntax error on trailing tokens.
2019-10-11 17:31:09 -05:00
Jordan Woyak
258832b1e8
ExpressionParser: Change function argument syntax to something more c++-like.
2019-10-11 17:31:09 -05:00