summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2020-04-10 06:39:48 +0200
committerGitHub <noreply@github.com>2020-04-10 06:39:48 +0200
commit8adf66f9fd3f056f1b217c63fc2d33f025c4a870 (patch)
tree5c7259db24dcc18054d524661d448025db46fcfc /src
parentMerge pull request #3623 from ReinUsesLisp/renderdoc-bind-spam (diff)
parentyuzu/configuration: Only assert that all buttons exist when we are handling the click for a button device (diff)
downloadyuzu-8adf66f9fd3f056f1b217c63fc2d33f025c4a870.tar
yuzu-8adf66f9fd3f056f1b217c63fc2d33f025c4a870.tar.gz
yuzu-8adf66f9fd3f056f1b217c63fc2d33f025c4a870.tar.bz2
yuzu-8adf66f9fd3f056f1b217c63fc2d33f025c4a870.tar.lz
yuzu-8adf66f9fd3f056f1b217c63fc2d33f025c4a870.tar.xz
yuzu-8adf66f9fd3f056f1b217c63fc2d33f025c4a870.tar.zst
yuzu-8adf66f9fd3f056f1b217c63fc2d33f025c4a870.zip
Diffstat (limited to '')
-rw-r--r--src/yuzu/configuration/configure_input_player.cpp15
-rw-r--r--src/yuzu/configuration/configure_input_simple.cpp9
-rw-r--r--src/yuzu/configuration/configure_mouse_advanced.cpp15
3 files changed, 21 insertions, 18 deletions
diff --git a/src/yuzu/configuration/configure_input_player.cpp b/src/yuzu/configuration/configure_input_player.cpp
index 96dec50e2..15ac30f12 100644
--- a/src/yuzu/configuration/configure_input_player.cpp
+++ b/src/yuzu/configuration/configure_input_player.cpp
@@ -541,18 +541,19 @@ void ConfigureInputPlayer::HandleClick(
button->setText(tr("[press key]"));
button->setFocus();
- const auto iter = std::find(button_map.begin(), button_map.end(), button);
- ASSERT(iter != button_map.end());
- const auto index = std::distance(button_map.begin(), iter);
- ASSERT(index < Settings::NativeButton::NumButtons && index >= 0);
+ // Keyboard keys can only be used as button devices
+ want_keyboard_keys = type == InputCommon::Polling::DeviceType::Button;
+ if (want_keyboard_keys) {
+ const auto iter = std::find(button_map.begin(), button_map.end(), button);
+ ASSERT(iter != button_map.end());
+ const auto index = std::distance(button_map.begin(), iter);
+ ASSERT(index < Settings::NativeButton::NumButtons && index >= 0);
+ }
input_setter = new_input_setter;
device_pollers = InputCommon::Polling::GetPollers(type);
- // Keyboard keys can only be used as button devices
- want_keyboard_keys = type == InputCommon::Polling::DeviceType::Button;
-
for (auto& poller : device_pollers) {
poller->Start();
}
diff --git a/src/yuzu/configuration/configure_input_simple.cpp b/src/yuzu/configuration/configure_input_simple.cpp
index ab3a11d30..0e0e8f113 100644
--- a/src/yuzu/configuration/configure_input_simple.cpp
+++ b/src/yuzu/configuration/configure_input_simple.cpp
@@ -35,6 +35,7 @@ void CallConfigureDialog(ConfigureInputSimple* caller, Args&&... args) {
// - Open any dialogs
// - Block in any way
+constexpr std::size_t PLAYER_0_INDEX = 0;
constexpr std::size_t HANDHELD_INDEX = 8;
void HandheldOnProfileSelect() {
@@ -53,8 +54,8 @@ void HandheldOnProfileSelect() {
}
void DualJoyconsDockedOnProfileSelect() {
- Settings::values.players[0].connected = true;
- Settings::values.players[0].type = Settings::ControllerType::DualJoycon;
+ Settings::values.players[PLAYER_0_INDEX].connected = true;
+ Settings::values.players[PLAYER_0_INDEX].type = Settings::ControllerType::DualJoycon;
for (std::size_t player = 1; player <= HANDHELD_INDEX; ++player) {
Settings::values.players[player].connected = false;
@@ -64,7 +65,7 @@ void DualJoyconsDockedOnProfileSelect() {
Settings::values.keyboard_enabled = false;
Settings::values.mouse_enabled = false;
Settings::values.debug_pad_enabled = false;
- Settings::values.touchscreen.enabled = false;
+ Settings::values.touchscreen.enabled = true;
}
// Name, OnProfileSelect (called when selected in drop down), OnConfigure (called when configure
@@ -78,7 +79,7 @@ constexpr std::array<InputProfile, 3> INPUT_PROFILES{{
}},
{QT_TR_NOOP("Single Player - Dual Joycons - Docked"), DualJoyconsDockedOnProfileSelect,
[](ConfigureInputSimple* caller) {
- CallConfigureDialog<ConfigureInputPlayer>(caller, 1, false);
+ CallConfigureDialog<ConfigureInputPlayer>(caller, PLAYER_0_INDEX, false);
}},
{QT_TR_NOOP("Custom"), [] {}, CallConfigureDialog<ConfigureInput>},
}};
diff --git a/src/yuzu/configuration/configure_mouse_advanced.cpp b/src/yuzu/configuration/configure_mouse_advanced.cpp
index 0a4abe34f..e0647ea5b 100644
--- a/src/yuzu/configuration/configure_mouse_advanced.cpp
+++ b/src/yuzu/configuration/configure_mouse_advanced.cpp
@@ -184,18 +184,19 @@ void ConfigureMouseAdvanced::HandleClick(
button->setText(tr("[press key]"));
button->setFocus();
- const auto iter = std::find(button_map.begin(), button_map.end(), button);
- ASSERT(iter != button_map.end());
- const auto index = std::distance(button_map.begin(), iter);
- ASSERT(index < Settings::NativeButton::NumButtons && index >= 0);
+ // Keyboard keys can only be used as button devices
+ want_keyboard_keys = type == InputCommon::Polling::DeviceType::Button;
+ if (want_keyboard_keys) {
+ const auto iter = std::find(button_map.begin(), button_map.end(), button);
+ ASSERT(iter != button_map.end());
+ const auto index = std::distance(button_map.begin(), iter);
+ ASSERT(index < Settings::NativeButton::NumButtons && index >= 0);
+ }
input_setter = new_input_setter;
device_pollers = InputCommon::Polling::GetPollers(type);
- // Keyboard keys can only be used as button devices
- want_keyboard_keys = type == InputCommon::Polling::DeviceType::Button;
-
for (auto& poller : device_pollers) {
poller->Start();
}