summaryrefslogtreecommitdiff
path: root/platform/osx
diff options
context:
space:
mode:
authorMarcel Admiraal <madmiraal@users.noreply.github.com>2021-12-25 09:29:08 +0000
committerMarcel Admiraal <madmiraal@users.noreply.github.com>2022-01-14 15:36:20 +0000
commitf41c72c5384ff9ce34f60380d4f27b9af0904298 (patch)
treeb7c218ab98ea31284e85edecc543986fbae94e06 /platform/osx
parent6689a9360c2dae0ca940e4e470c4d0a0e0a9bef4 (diff)
Fix Actions mapped to triggers not using the full range
Diffstat (limited to 'platform/osx')
-rw-r--r--platform/osx/joypad_osx.cpp17
1 files changed, 3 insertions, 14 deletions
diff --git a/platform/osx/joypad_osx.cpp b/platform/osx/joypad_osx.cpp
index 2152b34aff..c2356f12cd 100644
--- a/platform/osx/joypad_osx.cpp
+++ b/platform/osx/joypad_osx.cpp
@@ -449,20 +449,9 @@ void JoypadOSX::poll_joypads() const {
}
}
-static const Input::JoyAxisValue axis_correct(int p_value, int p_min, int p_max) {
- Input::JoyAxisValue jx;
- if (p_min < 0) {
- jx.min = -1;
- if (p_value < 0) {
- jx.value = (float)-p_value / p_min;
- } else
- jx.value = (float)p_value / p_max;
- }
- if (p_min == 0) {
- jx.min = 0;
- jx.value = 0.0f + (float)p_value / p_max;
- }
- return jx;
+static float axis_correct(int p_value, int p_min, int p_max) {
+ // Convert to a value between -1.0f and 1.0f.
+ return 2.0f * (p_value - p_min) / (p_max - p_min) - 1.0f;
}
void JoypadOSX::process_joypads() {