diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/yuzu/configuration/configure_input_player.cpp | 18 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_vibration.cpp | 2 |
2 files changed, 18 insertions, 2 deletions
diff --git a/src/yuzu/configuration/configure_input_player.cpp b/src/yuzu/configuration/configure_input_player.cpp index f65a7fe73..72640f5e7 100644 --- a/src/yuzu/configuration/configure_input_player.cpp +++ b/src/yuzu/configuration/configure_input_player.cpp | |||
| @@ -694,6 +694,8 @@ void ConfigureInputPlayer::UpdateInputDeviceCombobox() { | |||
| 694 | const auto current_guid = button_param->Get("guid", ""); | 694 | const auto current_guid = button_param->Get("guid", ""); |
| 695 | const auto current_port = button_param->Get("port", ""); | 695 | const auto current_port = button_param->Get("port", ""); |
| 696 | 696 | ||
| 697 | const bool is_keyboard_mouse = current_engine == "keyboard" || current_engine == "mouse"; | ||
| 698 | |||
| 697 | UpdateInputDevices(); | 699 | UpdateInputDevices(); |
| 698 | 700 | ||
| 699 | if (buttons_empty) { | 701 | if (buttons_empty) { |
| @@ -702,13 +704,22 @@ void ConfigureInputPlayer::UpdateInputDeviceCombobox() { | |||
| 702 | 704 | ||
| 703 | const bool all_one_device = | 705 | const bool all_one_device = |
| 704 | std::all_of(buttons_param.begin(), buttons_param.end(), | 706 | std::all_of(buttons_param.begin(), buttons_param.end(), |
| 705 | [current_engine, current_guid, current_port](const Common::ParamPackage param) { | 707 | [current_engine, current_guid, current_port, |
| 708 | is_keyboard_mouse](const Common::ParamPackage param) { | ||
| 709 | if (is_keyboard_mouse) { | ||
| 710 | return !param.Has("engine") || param.Get("engine", "") == "keyboard" || | ||
| 711 | param.Get("engine", "") == "mouse"; | ||
| 712 | } | ||
| 706 | return !param.Has("engine") || (param.Get("engine", "") == current_engine && | 713 | return !param.Has("engine") || (param.Get("engine", "") == current_engine && |
| 707 | param.Get("guid", "") == current_guid && | 714 | param.Get("guid", "") == current_guid && |
| 708 | param.Get("port", "") == current_port); | 715 | param.Get("port", "") == current_port); |
| 709 | }); | 716 | }); |
| 710 | 717 | ||
| 711 | if (all_one_device) { | 718 | if (all_one_device) { |
| 719 | if (is_keyboard_mouse) { | ||
| 720 | ui->comboDevices->setCurrentIndex(1); | ||
| 721 | return; | ||
| 722 | } | ||
| 712 | const auto devices_it = std::find_if( | 723 | const auto devices_it = std::find_if( |
| 713 | input_devices.begin(), input_devices.end(), | 724 | input_devices.begin(), input_devices.end(), |
| 714 | [current_engine, current_guid, current_port](const Common::ParamPackage param) { | 725 | [current_engine, current_guid, current_port](const Common::ParamPackage param) { |
| @@ -1073,6 +1084,11 @@ bool ConfigureInputPlayer::IsInputAcceptable(const Common::ParamPackage& params) | |||
| 1073 | return true; | 1084 | return true; |
| 1074 | } | 1085 | } |
| 1075 | 1086 | ||
| 1087 | // Keyboard/Mouse | ||
| 1088 | if (ui->comboDevices->currentIndex() == 1) { | ||
| 1089 | return params.Get("engine", "") == "keyboard" || params.Get("engine", "") == "mouse"; | ||
| 1090 | } | ||
| 1091 | |||
| 1076 | const auto current_input_device = input_devices[ui->comboDevices->currentIndex()]; | 1092 | const auto current_input_device = input_devices[ui->comboDevices->currentIndex()]; |
| 1077 | return params.Get("engine", "") == current_input_device.Get("class", "") && | 1093 | return params.Get("engine", "") == current_input_device.Get("class", "") && |
| 1078 | params.Get("guid", "") == current_input_device.Get("guid", "") && | 1094 | params.Get("guid", "") == current_input_device.Get("guid", "") && |
diff --git a/src/yuzu/configuration/configure_vibration.cpp b/src/yuzu/configuration/configure_vibration.cpp index 714db5b80..7dcb2c5b9 100644 --- a/src/yuzu/configuration/configure_vibration.cpp +++ b/src/yuzu/configuration/configure_vibration.cpp | |||
| @@ -99,7 +99,7 @@ void ConfigureVibration::SetVibrationDevices(std::size_t player_index) { | |||
| 99 | const auto guid = param.Get("guid", ""); | 99 | const auto guid = param.Get("guid", ""); |
| 100 | const auto port = param.Get("port", ""); | 100 | const auto port = param.Get("port", ""); |
| 101 | 101 | ||
| 102 | if (engine.empty() || engine == "keyboard") { | 102 | if (engine.empty() || engine == "keyboard" || engine == "mouse") { |
| 103 | continue; | 103 | continue; |
| 104 | } | 104 | } |
| 105 | 105 | ||