1
0
forked from Mirrors/RGSX

v2.1.0.2 - refactor language menu event handling and prioritize custom labels in control display

This commit is contained in:
skymike03
2025-09-09 14:10:08 +02:00
parent 76bf8ca1cd
commit 4fbab11306
3 changed files with 13 additions and 8 deletions

View File

@@ -330,13 +330,7 @@ async def main():
# Gestion des événements
events = pygame.event.get()
for event in events:
# Gestion directe des événements pour le menu de langue
if config.menu_state == "language_select":
if handle_language_menu_events(event, screen):
config.needs_redraw = True
continue
for event in events:
if event.type == pygame.USEREVENT + 1: # Événement de fin de musique
logger.debug("Fin de la musique détectée, lecture d'une nouvelle musique aléatoire")
current_music = play_random_music(music_files, music_folder, current_music)
@@ -388,6 +382,12 @@ async def main():
config.needs_redraw = True
continue
if config.menu_state == "language_select":
# Gérer les événements du sélecteur de langue via le système unifié
action = handle_controls(event, sources, joystick, screen)
config.needs_redraw = True
continue
if config.menu_state == "controls_help":
action = handle_controls(event, sources, joystick, screen)
config.needs_redraw = True

View File

@@ -4,7 +4,7 @@ import logging
import platform
# Version actuelle de l'application
app_version = "2.1.0.1"
app_version = "2.1.0.2"
def get_operating_system():
"""Renvoie le nom du système d'exploitation."""

View File

@@ -258,6 +258,11 @@ def get_control_display(action, default):
control_config = config.controls_config.get(action, {})
control_type = control_config.get('type', '')
# Si un libellé personnalisé est défini dans controls.json, on le privilégie
custom_label = control_config.get('display')
if isinstance(custom_label, str) and custom_label.strip():
return custom_label
# Générer le nom d'affichage basé sur la configuration réelle
if control_type == 'key':
key_code = control_config.get('key')