diff --git a/src/core/fullscreen_ui.cpp b/src/core/fullscreen_ui.cpp index 71fe23dbc..d0b575ccb 100644 --- a/src/core/fullscreen_ui.cpp +++ b/src/core/fullscreen_ui.cpp @@ -2571,8 +2571,8 @@ void FullscreenUI::InputBindingDialog::Start(SettingsInterface* bsi, InputBindin } const float abs_value = std::abs(value); - const bool reverse_threshold = - (key.source_subtype == InputSubclass::ControllerAxis && std::abs(initial_value) > 0.5f); + const bool reverse_threshold = (key.source_subtype == InputSubclass::ControllerAxis && + std::abs(initial_value) > 0.5f && std::abs(initial_value - min_value) > 0.1f); for (InputBindingKey& other_key : m_new_bindings) { diff --git a/src/duckstation-qt/inputbindingdialog.cpp b/src/duckstation-qt/inputbindingdialog.cpp index a25649706..975ea62a0 100644 --- a/src/duckstation-qt/inputbindingdialog.cpp +++ b/src/duckstation-qt/inputbindingdialog.cpp @@ -324,8 +324,8 @@ void InputBindingDialog::inputManagerHookCallback(InputBindingKey key, float val logInputEvent(m_bind_type, key, value, initial_value, min_value); const float abs_value = std::abs(value); - const bool reverse_threshold = - (key.source_subtype == InputSubclass::ControllerAxis && std::abs(initial_value) > 0.5f); + const bool reverse_threshold = (key.source_subtype == InputSubclass::ControllerAxis && + std::abs(initial_value) > 0.5f && std::abs(initial_value - min_value) > 0.1f); for (InputBindingKey& other_key : m_new_bindings) { diff --git a/src/duckstation-qt/inputbindingwidgets.cpp b/src/duckstation-qt/inputbindingwidgets.cpp index 925412181..9b7d35cb0 100644 --- a/src/duckstation-qt/inputbindingwidgets.cpp +++ b/src/duckstation-qt/inputbindingwidgets.cpp @@ -353,8 +353,8 @@ void InputBindingWidget::inputManagerHookCallback(InputBindingKey key, float val InputBindingDialog::logInputEvent(m_bind_type, key, value, initial_value, min_value); const float abs_value = std::abs(value); - const bool reverse_threshold = - (key.source_subtype == InputSubclass::ControllerAxis && std::abs(initial_value) > 0.5f); + const bool reverse_threshold = (key.source_subtype == InputSubclass::ControllerAxis && + std::abs(initial_value) > 0.5f && std::abs(initial_value - min_value) > 0.1f); for (InputBindingKey& other_key : m_new_bindings) {