diff --git a/source/ui/service_menu.cpp b/source/ui/service_menu.cpp index e764726..674e376 100644 --- a/source/ui/service_menu.cpp +++ b/source/ui/service_menu.cpp @@ -42,14 +42,14 @@ ServiceMenu::ServiceMenu() void ServiceMenu::toggle() { if (define_buttons_ && define_buttons_->isEnabled()) return; - if (isAnimating() && !define_buttons_->isEnabled()) return; // No permitir toggle durante una animación + if (isAnimating() && !define_buttons_->isEnabled()) return; // No permitir toggle durante una animación playBackSound(); enabled_ = !enabled_; if (enabled_) { // Primero resetea el estado y luego muestra la animación - //reset(); + // reset(); Options::gamepad_manager.assignAndLinkGamepads(); renderer_->show(this); } else { @@ -64,7 +64,7 @@ void ServiceMenu::render() { if (enabled_ || isAnimating()) { renderer_->render(this); } else { - return; // Si no está ni habilitado ni animándose, no dibujes nada. + return; // Si no está ni habilitado ni animándose, no dibujes nada. } // El mensaje de reinicio y otros elementos solo deben aparecer si está completamente visible, @@ -339,8 +339,10 @@ void ServiceMenu::initializeOptions() { options_.push_back(std::make_unique( Lang::getText("[SERVICE_MENU] SWAP_CONTROLLERS"), SettingsGroup::CONTROLS, - []() { + [this]() { Options::gamepad_manager.swapPlayers(); + adjustListValues(); // Sincroniza el valor de las opciones de lista (como MANDO1) con los datos reales + updateOptionPairs(); // Actualiza los pares de texto que se van a dibujar })); // VIDEO