summaryrefslogtreecommitdiff
path: root/src/yuzu/configuration/configure_input_player_widget.cpp
diff options
context:
space:
mode:
authorgerman77 <juangerman-13@hotmail.com>2021-06-27 14:02:38 -0500
committerMonsterDruide1 <5958456@gmail.com>2021-09-18 23:22:42 +0200
commite6c4bf52f0eb2c9c78e983ffbc667891463d3253 (patch)
treed01a5189842a1c210b98588cb2b38ad89a11a322 /src/yuzu/configuration/configure_input_player_widget.cpp
parent9bb6580d89efb76534d9395bc052459d5f58e7c4 (diff)
input_common/tas: Add swap controller
Diffstat (limited to 'src/yuzu/configuration/configure_input_player_widget.cpp')
-rw-r--r--src/yuzu/configuration/configure_input_player_widget.cpp34
1 files changed, 18 insertions, 16 deletions
diff --git a/src/yuzu/configuration/configure_input_player_widget.cpp b/src/yuzu/configuration/configure_input_player_widget.cpp
index b905fc73d..ba3720c03 100644
--- a/src/yuzu/configuration/configure_input_player_widget.cpp
+++ b/src/yuzu/configuration/configure_input_player_widget.cpp
@@ -175,10 +175,7 @@ void PlayerControlPreview::ResetInputs() {
}
void PlayerControlPreview::UpdateInput() {
- if (controller_callback.update != nullptr) {
- controller_callback.update(std::move(true));
- }
- if (!is_enabled && !mapping_active) {
+ if (!is_enabled && !mapping_active && !Settings::values.tas_enable) {
return;
}
bool input_changed = false;
@@ -223,20 +220,25 @@ void PlayerControlPreview::UpdateInput() {
}
}
- ControllerInput input{};
if (input_changed) {
update();
- input.changed = true;
- }
- input.axis_values[Settings::NativeAnalog::LStick] = {
- axis_values[Settings::NativeAnalog::LStick].value.x(),
- axis_values[Settings::NativeAnalog::LStick].value.y()};
- input.axis_values[Settings::NativeAnalog::RStick] = {
- axis_values[Settings::NativeAnalog::RStick].value.x(),
- axis_values[Settings::NativeAnalog::RStick].value.y()};
- input.button_values = button_values;
- if (controller_callback.input != nullptr) {
- controller_callback.input(std::move(input));
+ ControllerInput input{
+ .axis_values =
+ {std::pair<float, float>{axis_values[Settings::NativeAnalog::LStick].value.x(),
+ axis_values[Settings::NativeAnalog::LStick].value.y()},
+ std::pair<float, float>{axis_values[Settings::NativeAnalog::RStick].value.x(),
+ axis_values[Settings::NativeAnalog::RStick].value.y()}},
+ .button_values = button_values,
+ .changed = true,
+ };
+
+ if (controller_callback.input != nullptr) {
+ controller_callback.input(std::move(input));
+ }
+ }
+
+ if (controller_callback.update != nullptr) {
+ controller_callback.update(std::move(true));
}
if (mapping_active) {