diff options
Diffstat (limited to '')
| -rw-r--r-- | src/common/settings.h | 1 | ||||
| -rw-r--r-- | src/yuzu/configuration/config.cpp | 3 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_input_advanced.cpp | 2 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_input_advanced.ui | 19 | ||||
| -rw-r--r-- | src/yuzu/hotkeys.cpp | 3 | ||||
| -rw-r--r-- | src/yuzu/util/controller_navigation.cpp | 3 |
6 files changed, 28 insertions, 3 deletions
diff --git a/src/common/settings.h b/src/common/settings.h index d01c0448c..9bee6e10f 100644 --- a/src/common/settings.h +++ b/src/common/settings.h | |||
| @@ -554,6 +554,7 @@ struct Values { | |||
| 554 | Setting<bool> use_docked_mode{true, "use_docked_mode"}; | 554 | Setting<bool> use_docked_mode{true, "use_docked_mode"}; |
| 555 | 555 | ||
| 556 | BasicSetting<bool> enable_raw_input{false, "enable_raw_input"}; | 556 | BasicSetting<bool> enable_raw_input{false, "enable_raw_input"}; |
| 557 | BasicSetting<bool> controller_navigation{true, "controller_navigation"}; | ||
| 557 | 558 | ||
| 558 | Setting<bool> vibration_enabled{true, "vibration_enabled"}; | 559 | Setting<bool> vibration_enabled{true, "vibration_enabled"}; |
| 559 | Setting<bool> enable_accurate_vibrations{false, "enable_accurate_vibrations"}; | 560 | Setting<bool> enable_accurate_vibrations{false, "enable_accurate_vibrations"}; |
diff --git a/src/yuzu/configuration/config.cpp b/src/yuzu/configuration/config.cpp index 7e8f92840..2c8c10c50 100644 --- a/src/yuzu/configuration/config.cpp +++ b/src/yuzu/configuration/config.cpp | |||
| @@ -393,6 +393,8 @@ void Config::ReadControlValues() { | |||
| 393 | ReadGlobalSetting(Settings::values.enable_accurate_vibrations); | 393 | ReadGlobalSetting(Settings::values.enable_accurate_vibrations); |
| 394 | ReadGlobalSetting(Settings::values.motion_enabled); | 394 | ReadGlobalSetting(Settings::values.motion_enabled); |
| 395 | 395 | ||
| 396 | ReadBasicSetting(Settings::values.controller_navigation); | ||
| 397 | |||
| 396 | qt_config->endGroup(); | 398 | qt_config->endGroup(); |
| 397 | } | 399 | } |
| 398 | 400 | ||
| @@ -1001,6 +1003,7 @@ void Config::SaveControlValues() { | |||
| 1001 | WriteBasicSetting(Settings::values.keyboard_enabled); | 1003 | WriteBasicSetting(Settings::values.keyboard_enabled); |
| 1002 | WriteBasicSetting(Settings::values.emulate_analog_keyboard); | 1004 | WriteBasicSetting(Settings::values.emulate_analog_keyboard); |
| 1003 | WriteBasicSetting(Settings::values.mouse_panning_sensitivity); | 1005 | WriteBasicSetting(Settings::values.mouse_panning_sensitivity); |
| 1006 | WriteBasicSetting(Settings::values.controller_navigation); | ||
| 1004 | 1007 | ||
| 1005 | WriteBasicSetting(Settings::values.tas_enable); | 1008 | WriteBasicSetting(Settings::values.tas_enable); |
| 1006 | WriteBasicSetting(Settings::values.tas_loop); | 1009 | WriteBasicSetting(Settings::values.tas_loop); |
diff --git a/src/yuzu/configuration/configure_input_advanced.cpp b/src/yuzu/configuration/configure_input_advanced.cpp index 65c8e59ac..20fc2599d 100644 --- a/src/yuzu/configuration/configure_input_advanced.cpp +++ b/src/yuzu/configuration/configure_input_advanced.cpp | |||
| @@ -131,6 +131,7 @@ void ConfigureInputAdvanced::ApplyConfiguration() { | |||
| 131 | Settings::values.touchscreen.enabled = ui->touchscreen_enabled->isChecked(); | 131 | Settings::values.touchscreen.enabled = ui->touchscreen_enabled->isChecked(); |
| 132 | Settings::values.enable_raw_input = ui->enable_raw_input->isChecked(); | 132 | Settings::values.enable_raw_input = ui->enable_raw_input->isChecked(); |
| 133 | Settings::values.enable_udp_controller = ui->enable_udp_controller->isChecked(); | 133 | Settings::values.enable_udp_controller = ui->enable_udp_controller->isChecked(); |
| 134 | Settings::values.controller_navigation = ui->controller_navigation->isChecked(); | ||
| 134 | } | 135 | } |
| 135 | 136 | ||
| 136 | void ConfigureInputAdvanced::LoadConfiguration() { | 137 | void ConfigureInputAdvanced::LoadConfiguration() { |
| @@ -162,6 +163,7 @@ void ConfigureInputAdvanced::LoadConfiguration() { | |||
| 162 | ui->touchscreen_enabled->setChecked(Settings::values.touchscreen.enabled); | 163 | ui->touchscreen_enabled->setChecked(Settings::values.touchscreen.enabled); |
| 163 | ui->enable_raw_input->setChecked(Settings::values.enable_raw_input.GetValue()); | 164 | ui->enable_raw_input->setChecked(Settings::values.enable_raw_input.GetValue()); |
| 164 | ui->enable_udp_controller->setChecked(Settings::values.enable_udp_controller.GetValue()); | 165 | ui->enable_udp_controller->setChecked(Settings::values.enable_udp_controller.GetValue()); |
| 166 | ui->controller_navigation->setChecked(Settings::values.controller_navigation.GetValue()); | ||
| 165 | 167 | ||
| 166 | UpdateUIEnabled(); | 168 | UpdateUIEnabled(); |
| 167 | } | 169 | } |
diff --git a/src/yuzu/configuration/configure_input_advanced.ui b/src/yuzu/configuration/configure_input_advanced.ui index df0e4d602..66f2075f2 100644 --- a/src/yuzu/configuration/configure_input_advanced.ui +++ b/src/yuzu/configuration/configure_input_advanced.ui | |||
| @@ -2655,6 +2655,19 @@ | |||
| 2655 | </widget> | 2655 | </widget> |
| 2656 | </item> | 2656 | </item> |
| 2657 | <item row="4" column="0"> | 2657 | <item row="4" column="0"> |
| 2658 | <widget class="QCheckBox" name="controller_navigation"> | ||
| 2659 | <property name="minimumSize"> | ||
| 2660 | <size> | ||
| 2661 | <width>0</width> | ||
| 2662 | <height>23</height> | ||
| 2663 | </size> | ||
| 2664 | </property> | ||
| 2665 | <property name="text"> | ||
| 2666 | <string>Controller navigation</string> | ||
| 2667 | </property> | ||
| 2668 | </widget> | ||
| 2669 | </item> | ||
| 2670 | <item row="5" column="0"> | ||
| 2658 | <widget class="QCheckBox" name="mouse_panning"> | 2671 | <widget class="QCheckBox" name="mouse_panning"> |
| 2659 | <property name="minimumSize"> | 2672 | <property name="minimumSize"> |
| 2660 | <size> | 2673 | <size> |
| @@ -2667,7 +2680,7 @@ | |||
| 2667 | </property> | 2680 | </property> |
| 2668 | </widget> | 2681 | </widget> |
| 2669 | </item> | 2682 | </item> |
| 2670 | <item row="4" column="2"> | 2683 | <item row="5" column="2"> |
| 2671 | <widget class="QSpinBox" name="mouse_panning_sensitivity"> | 2684 | <widget class="QSpinBox" name="mouse_panning_sensitivity"> |
| 2672 | <property name="toolTip"> | 2685 | <property name="toolTip"> |
| 2673 | <string>Mouse sensitivity</string> | 2686 | <string>Mouse sensitivity</string> |
| @@ -2689,14 +2702,14 @@ | |||
| 2689 | </property> | 2702 | </property> |
| 2690 | </widget> | 2703 | </widget> |
| 2691 | </item> | 2704 | </item> |
| 2692 | <item row="5" column="0"> | 2705 | <item row="6" column="0"> |
| 2693 | <widget class="QLabel" name="motion_touch"> | 2706 | <widget class="QLabel" name="motion_touch"> |
| 2694 | <property name="text"> | 2707 | <property name="text"> |
| 2695 | <string>Motion / Touch</string> | 2708 | <string>Motion / Touch</string> |
| 2696 | </property> | 2709 | </property> |
| 2697 | </widget> | 2710 | </widget> |
| 2698 | </item> | 2711 | </item> |
| 2699 | <item row="5" column="2"> | 2712 | <item row="6" column="2"> |
| 2700 | <widget class="QPushButton" name="buttonMotionTouch"> | 2713 | <widget class="QPushButton" name="buttonMotionTouch"> |
| 2701 | <property name="text"> | 2714 | <property name="text"> |
| 2702 | <string>Configure</string> | 2715 | <string>Configure</string> |
diff --git a/src/yuzu/hotkeys.cpp b/src/yuzu/hotkeys.cpp index d96497c4e..6ed9611c7 100644 --- a/src/yuzu/hotkeys.cpp +++ b/src/yuzu/hotkeys.cpp | |||
| @@ -190,6 +190,9 @@ void ControllerShortcut::ControllerUpdateEvent(Core::HID::ControllerTriggerType | |||
| 190 | if (type != Core::HID::ControllerTriggerType::Button) { | 190 | if (type != Core::HID::ControllerTriggerType::Button) { |
| 191 | return; | 191 | return; |
| 192 | } | 192 | } |
| 193 | if (!Settings::values.controller_navigation) { | ||
| 194 | return; | ||
| 195 | } | ||
| 193 | if (button_sequence.npad.raw == Core::HID::NpadButton::None && | 196 | if (button_sequence.npad.raw == Core::HID::NpadButton::None && |
| 194 | button_sequence.capture.raw == 0 && button_sequence.home.raw == 0) { | 197 | button_sequence.capture.raw == 0 && button_sequence.home.raw == 0) { |
| 195 | return; | 198 | return; |
diff --git a/src/yuzu/util/controller_navigation.cpp b/src/yuzu/util/controller_navigation.cpp index 86fb28b9f..c2b13123d 100644 --- a/src/yuzu/util/controller_navigation.cpp +++ b/src/yuzu/util/controller_navigation.cpp | |||
| @@ -40,6 +40,9 @@ void ControllerNavigation::TriggerButton(Settings::NativeButton::Values native_b | |||
| 40 | 40 | ||
| 41 | void ControllerNavigation::ControllerUpdateEvent(Core::HID::ControllerTriggerType type) { | 41 | void ControllerNavigation::ControllerUpdateEvent(Core::HID::ControllerTriggerType type) { |
| 42 | std::lock_guard lock{mutex}; | 42 | std::lock_guard lock{mutex}; |
| 43 | if (!Settings::values.controller_navigation) { | ||
| 44 | return; | ||
| 45 | } | ||
| 43 | if (type == Core::HID::ControllerTriggerType::Button) { | 46 | if (type == Core::HID::ControllerTriggerType::Button) { |
| 44 | ControllerUpdateButton(); | 47 | ControllerUpdateButton(); |
| 45 | return; | 48 | return; |