Corrige le texte illisible dans les boîtes de dialogue du jeu de démo

Pas un bug moteur cette fois : le moteur ne fige JAMAIS de couleur de
texte par défaut à la création d'un élément (voir
default_style_for_widget.py) — un titre/texte fraîchement posé retombe
donc sur le texte SOMBRE par défaut de Bulma, pensé pour un fond clair.
Mon script de démo ne posait jamais explicitement de couleur de texte sur
les titres/paragraphes à l'intérieur des boîtes de dialogue (fond sombre
volontaire) : le texte y était donc quasi invisible, ce qui donnait
l'impression trompeuse que "la boîte de dialogue est assombrie" — alors
que seul son texte, invisible par défaut sur fond sombre, l'était (la
boîte elle-même a bien sa couleur opaque demandée, #20263a/#1f3a24/
#2a2440, sans aucun voile supplémentaire dessus).

Ajout de la couleur de texte manquante (#f5f6fa) sur chaque titre/texte
posé dans une boîte de dialogue. Valeur volontairement différente de la
suggestion par défaut du panneau (#e8eaf0) : save_element_controls.py
ignore délibérément un réglage renvoyé identique à sa valeur par défaut
tant qu'il n'a jamais été personnalisé (même logique anti-figeage que
default_style_for_widget.py) — envoyer #e8eaf0 tel quel n'aurait donc eu
AUCUN effet, silencieusement (piège rencontré et documenté dans le script).

Jeu de démo régénéré (supprimé puis reconstruit) avec le correctif.
129 tests toujours au vert (script indépendant, aucun changement moteur).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
william
2026-08-27 18:52:17 +02:00
co-authored by Claude Sonnet 5
parent 81c31a9c49
commit 7dd7551bc5
+23 -6
View File
@@ -21,6 +21,23 @@ jeu PERSISTANT sous projects/ (contrairement aux tests pytest, il n'est
PAS supprimé à la fin) — pensé pour être ouvert et joué dans le navigateur PAS supprimé à la fin) — pensé pour être ouvert et joué dans le navigateur
après coup. après coup.
Couleur du texte posée explicitement (#f5f6fa) sur chaque titre/texte à
l'intérieur d'une boîte de dialogue : le moteur ne fige JAMAIS de couleur
par défaut à la création d'un élément (voir
default_style_for_widget.py — "la figer dès la création ferait apparaître
une couleur que personne n'a demandée"), un titre/texte fraîchement posé
retombe donc sur le texte sombre par défaut de Bulma, pensé pour un fond
clair — illisible sur le fond sombre d'une boîte de dialogue tant que
personne n'a choisi une couleur claire à la main dans le panneau de
propriétés. Sans ce réglage explicite ici, la démo donnait l'impression
trompeuse que "la boîte de dialogue est assombrie" (elle ne l'est pas :
seul son texte, invisible par défaut sur fond sombre, l'était). Valeur
volontairement DIFFÉRENTE de la couleur suggérée par défaut dans le
panneau (#e8eaf0) : save_element_controls.py ignore délibérément un
réglage renvoyé identique à sa valeur par défaut tant qu'il n'a jamais été
personnalisé (même logique anti-figeage), donc envoyer #e8eaf0 telle
quelle ici n'aurait eu AUCUN effet, silencieusement.
Usage : python3 scripts/build_demo_dialogues.py Usage : python3 scripts/build_demo_dialogues.py
""" """
import json import json
@@ -100,9 +117,9 @@ def build():
overlay_bienvenue = _add_element(client, slug, screen1, "superposition") overlay_bienvenue = _add_element(client, slug, screen1, "superposition")
_save(client, slug, overlay_bienvenue, couleur_boite="#20263a", arrondi="16") _save(client, slug, overlay_bienvenue, couleur_boite="#20263a", arrondi="16")
t1 = _add_child(client, slug, overlay_bienvenue, "titre") t1 = _add_child(client, slug, overlay_bienvenue, "titre")
_save(client, slug, t1, content="Bienvenue !") _save(client, slug, t1, content="Bienvenue !", color="#f5f6fa")
t2 = _add_child(client, slug, overlay_bienvenue, "texte") t2 = _add_child(client, slug, overlay_bienvenue, "texte")
_save(client, slug, t2, content="Ce petit tutoriel te montre comment fonctionnent les dialogues et la surbrillance. Clique sur OK pour commencer.") _save(client, slug, t2, content="Ce petit tutoriel te montre comment fonctionnent les dialogues et la surbrillance. Clique sur OK pour commencer.", color="#f5f6fa")
btn_ok = _add_child(client, slug, overlay_bienvenue, "bouton") btn_ok = _add_child(client, slug, overlay_bienvenue, "bouton")
_save(client, slug, btn_ok, content="OK, c'est parti") _save(client, slug, btn_ok, content="OK, c'est parti")
@@ -112,9 +129,9 @@ def build():
overlay_bravo = _add_element(client, slug, screen1, "superposition") overlay_bravo = _add_element(client, slug, screen1, "superposition")
_save(client, slug, overlay_bravo, couleur_boite="#1f3a24", arrondi="16") _save(client, slug, overlay_bravo, couleur_boite="#1f3a24", arrondi="16")
t3 = _add_child(client, slug, overlay_bravo, "titre") t3 = _add_child(client, slug, overlay_bravo, "titre")
_save(client, slug, t3, content="Bravo !") _save(client, slug, t3, content="Bravo !", color="#f5f6fa")
t4 = _add_child(client, slug, overlay_bravo, "texte") t4 = _add_child(client, slug, overlay_bravo, "texte")
_save(client, slug, t4, content="Tu as cliqué le bon bouton. Le tutoriel est terminé.") _save(client, slug, t4, content="Tu as cliqué le bon bouton. Le tutoriel est terminé.", color="#f5f6fa")
btn_close_bravo = _add_child(client, slug, overlay_bravo, "bouton") btn_close_bravo = _add_child(client, slug, overlay_bravo, "bouton")
_save(client, slug, btn_close_bravo, content="Fermer") _save(client, slug, btn_close_bravo, content="Fermer")
@@ -150,9 +167,9 @@ def build():
overlay_mentor = _add_element(client, slug, screen2, "superposition") overlay_mentor = _add_element(client, slug, screen2, "superposition")
_save(client, slug, overlay_mentor, couleur_boite="#2a2440", arrondi="16") _save(client, slug, overlay_mentor, couleur_boite="#2a2440", arrondi="16")
t5 = _add_child(client, slug, overlay_mentor, "titre") t5 = _add_child(client, slug, overlay_mentor, "titre")
_save(client, slug, t5, content="Message du mentor") _save(client, slug, t5, content="Message du mentor", color="#f5f6fa")
t6 = _add_child(client, slug, overlay_mentor, "texte") t6 = _add_child(client, slug, overlay_mentor, "texte")
_save(client, slug, t6, content="Ce message est apparu tout seul, 3 secondes après l'arrivée sur cet écran — sans aucun clic.") _save(client, slug, t6, content="Ce message est apparu tout seul, 3 secondes après l'arrivée sur cet écran — sans aucun clic.", color="#f5f6fa")
btn_close_mentor = _add_child(client, slug, overlay_mentor, "bouton") btn_close_mentor = _add_child(client, slug, overlay_mentor, "bouton")
_save(client, slug, btn_close_mentor, content="Fermer") _save(client, slug, btn_close_mentor, content="Fermer")