Comment le widget résout sa langue et son skin
Le widget que tu intègres a deux couches : le shell (la chrome Caputchin, sa case à cocher ou sa bande de marque, sa formulation et ses couleurs) et, quand tu utilises un jeu, le jeu à l'intérieur. Chacun a une langue et un skin, et le widget résout les deux sur le serveur au chargement. Cette page explique comment le shell se résout, et comment il s'aligne avec le jeu pour que les deux ne se heurtent jamais.
Pour personnaliser la langue, le skin et la configuration propres d'un jeu, vois personnalisation des jeux. Cette page porte sur le shell.
Ce que le shell livre
Le shell est entièrement autonome. Il embarque ses chaînes d'interface dans chaque langue officielle et à la fois une palette claire et une sombre, donc il a toujours quelque chose de correct à rendre même sans personnalisation et sans réseau. Remplacer ces chaînes, couleurs ou liens embarqués est de la marque blanche, une fonctionnalité de niveau Apex ; la résolution ci-dessous est la même que tu aies des surcharges ou non.
Comment le shell choisit une langue
Quand le widget charge, il décide quelle langue demander au serveur, dans cet ordre :
- L'attribut
localedu widget, si la page en a fixé un (un choix explicite). - Sinon, la langue du navigateur du visiteur.
Le serveur résout alors cela contre les langues du shell (tes surcharges d'abord, puis le jeu embarqué) : une correspondance exacte, puis la langue de base, puis le défaut du shell, puis sa première langue. Donc le shell rend toujours une vraie formulation.
Comment le shell choisit un skin
Même forme pour le skin :
- L'attribut
skindu widget, si la page en a fixé un :light,dark, ou un nom de préréglage. - Sinon, la préférence système du visiteur (
prefers-color-scheme).
Le serveur résout cela en une palette claire ou sombre concrète (tes surcharges d'abord, puis embarqué). Chaque préréglage déclare le mode dans lequel il fonctionne ; un préréglage dont le mode est any se lit sur les deux fonds et est donc éligible pour les deux. Le shell livre une palette claire et une sombre par défaut, et le skin résolu rapporte toujours un mode clair ou sombre concret, ce que la chrome rend.
Comment le shell suit le jeu
Voici la partie qui relie le tout. Quand un jeu est monté, le shell ne résout pas sa langue et son skin à partir du signal visiteur directement. À la place, il suit le jeu : le widget résout le jeu d'abord, puis utilise la langue résolue du jeu et son mode clair ou sombre comme entrée du shell.
Donc si le navigateur d'un visiteur est en français et que le jeu se résout en français, la chrome environnante se rend en français aussi. Si le jeu se résout sur son skin sombre, la chrome passe au sombre pour correspondre. Le shell ne retombe sur la langue propre du visiteur et sa préférence système que quand aucun jeu n'est monté (le widget à simple case à cocher), ou quand le jeu n'a pas résolu de langue ou de skin propre.
Le résultat est que le jeu et la chrome autour de lui s'accordent toujours, sans que tu configures le shell et le jeu séparément pour correspondre.
Configuration
Le shell a aussi une petite configuration : les cibles de lien dans sa bande de marque (le lien d'accueil et le lien légal). Contrairement à la langue et au skin, celle-ci n'a pas d'entrée visiteur ; le serveur la résout à partir de tes surcharges ou des défauts embarqués. Changer ces liens fait partie de la marque blanche.
Voir aussi
- Marque blanche du widget : remplacer la formulation, les couleurs et les liens du shell.
- Styliser le widget avec CSS : cibler les parts du shell depuis ta propre feuille de style.
- Personnalisation des jeux : la langue, le skin et la configuration propres du jeu.