From 58ee60037e519bb965ae60e37f479bba5c0321a4 Mon Sep 17 00:00:00 2001 From: Shiralyn Date: Sun, 18 May 2025 01:12:32 +0200 Subject: [PATCH] Input/Config: Setting to disable controller vibration/rumble --- config_spec.yml | 3 +++ ui/xemu-input.c | 2 +- ui/xui/main-menu.cc | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/config_spec.yml b/config_spec.yml index d013c806ac..e95e6bddf7 100644 --- a/config_spec.yml +++ b/config_spec.yml @@ -54,6 +54,9 @@ input: auto_bind: type: bool default: true + allow_vibration: + type: bool + default: true background_input_capture: bool keyboard_controller_scancode_map: # Scancode reference : https://github.com/libsdl-org/SDL/blob/main/include/SDL_scancode.h diff --git a/ui/xemu-input.c b/ui/xemu-input.c index 31a51eda9d..de1db08f21 100644 --- a/ui/xemu-input.c +++ b/ui/xemu-input.c @@ -490,7 +490,7 @@ void xemu_input_update_sdl_controller_state(ControllerState *state) void xemu_input_update_rumble(ControllerState *state) { - if (!state->rumble_enabled) { + if (!state->rumble_enabled || !g_config.input.allow_vibration) { return; } diff --git a/ui/xui/main-menu.cc b/ui/xui/main-menu.cc index 9bb5dcf33f..ef3bb05c89 100644 --- a/ui/xui/main-menu.cc +++ b/ui/xui/main-menu.cc @@ -485,6 +485,8 @@ void MainMenuInputView::Draw() SectionTitle("Options"); Toggle("Auto-bind controllers", &g_config.input.auto_bind, "Bind newly connected controllers to any open port"); + Toggle("Controller vibration", &g_config.input.allow_vibration, + "Allows the controllers to vibrate"); Toggle("Background controller input capture", &g_config.input.background_input_capture, "Capture even if window is unfocused (requires restart)");