Commit Graph

180 Commits

Author SHA1 Message Date
Henrik Rydgård
ee93e4a2ca Batch axis events all the way into ControlMapper 2023-09-29 11:14:19 +02:00
Henrik Rydgård
b501abf576 Add more display information to system info. 2023-08-30 17:38:22 +02:00
Henrik Rydgård
2b7fe0d729 Cleanup: callbacks->lambdas 2023-08-24 11:08:43 +02:00
Henrik Rydgård
be2f81c3eb Controls: Make the analog/digital mapping clash resolution more gentle.
Now takes the time into account, so clashing digital input will only shrink
analog inputs once it's a few seconds old.

Also fixes a bug where if there are both inputs, it was hard to reach
the limits because the digital input itself ended up getting shrunk.

This might help #17860
2023-08-23 18:51:27 +02:00
Henrik Rydgård
bed06f46d7 Bugfix: Also check the allow-combo setting for analog inputs. 2023-07-11 11:00:57 +02:00
Henrik Rydgård
952e125c7e Break out rendering of "notices" from OnScreenDisplay. They can now also be used as views.
Use it for the new message in ControlMappingScreen, when you try to map
a combo when that's disabled. It'll have more uses.
2023-07-07 15:23:19 +02:00
Henrik Rydgård
b9327073bb Add checkbox controlling if new mappings can be combo mappings.
These can be problematic with certain controllers that send double
signals. Like PS4 controllers on Android, the analog triggers send dual
axis events, and additionally digital events.
2023-07-07 10:42:08 +02:00
Henrik Rydgård
356cc64eb5 Logging improvements, cleanup 2023-07-06 14:56:52 +02:00
Henrik Rydgård
fc3f7da3af TouchTestScreen: Have 8 entries logged instead of 2. 2023-07-06 11:48:25 +02:00
Henrik Rydgård
4f1be34f24 Revert "Remove the Android display resolution selector"
This reverts commit ea0eaa31e6.
2023-05-17 09:37:15 +02:00
Henrik Rydgård
311a1a0fe2 Fix glitch when mapping analog inputs, caused by multiple TriggerFinish caused by stray analog axis events.
ADd some guards all over the place against the same thing.
2023-05-06 15:33:28 +02:00
Henrik Rydgård
cd33b79ae7 Fix an issue where stray KEY_UP events could confuse the control mapper into setting empty events
This had some not-so-good consequences, like inability to map anything
in VR, and sometimes empty MultiMappings would result that we could end
up asserting on before the previous commit.
2023-05-05 23:00:01 +02:00
Henrik Rydgård
eec1ad5a75 Add some checks to try to prevent empty MultiInputMapping from arising, assert->log 2023-05-05 22:26:44 +02:00
Henrik Rydgård
ee6234ecb6 I18N: Switch to getting categories by index instead of by string lookup
Also gets rid of the shared_ptr usage, and generally makes things nicer.

Needed for later config refactorings, good to get in early.
2023-04-07 10:35:01 +02:00
Henrik Rydgård
4e0babc950 Add a "reset to default" for all float-slider settings
Unfortunately, the default values from the configs are not exposed
outside Config.cpp, so there's duplication.

Need to figure out how to do fix that, but it's out-of-scope for this
PR.
2023-04-05 10:50:53 +02:00
Henrik Rydgård
9146020aa4 Logic fix, optimization, remove hack. See post-comments on #17215 2023-04-01 22:45:26 +02:00
Henrik Rydgård
c1b5aed9b7 Cleanup, confine g_controllerMap access to KeyMap.cpp 2023-04-01 20:28:42 +02:00
Henrik Rydgård
88e73801fe Fix the binding UI to support multi-bind 2023-04-01 17:51:45 +02:00
Henrik Rydgård
8c9fee064e Display multi-mappings correctly in the mapping list 2023-04-01 15:00:22 +02:00
Henrik Rydgård
0e1c42ce70 Plumb multimappings all the way through. 2023-04-01 13:50:57 +02:00
Henrik Rydgård
04321284c0 Remove redundant callback 2023-04-01 08:57:42 +02:00
Henrik Rydgård
025ec248e4 Don't need two SetCallback functions. 2023-03-31 11:11:46 +02:00
Henrik Rydgård
526b4f782d Fixes, add callback for analog virtual keys
Some fixes
2023-03-31 11:05:33 +02:00
Henrik Rydgård
26bf40c497 ControlMapper: Change the callbacks to be more suitable for the upcoming refactor. (#17209)
* ControlMapper: Change the callbacks to be more suitable for the upcoming refactor.

* SetAllButtons: Separate bits to set and bits to clear.

* Oops, missed committing some files somehow
2023-03-30 10:47:28 +02:00
Henrik Rydgård
d00809ae53 Rename KeyDef to InputMapping and give it responsibility for Axis encoding 2023-03-29 11:59:31 +02:00