-
Launcher Version 2.5.0 Stable
released this
2026-11-08 15:56:14 +01:00 | 84 commits to master since this release🖥️ Launcher 2.5.0 — Plein écran et nom des appareils dans l'audit
Version d'affichage : la fenêtre du launcher et le menu d'administration peuvent maintenant s'agrandir sur tout l'écran, la barre des tâches restant visible. Leur mise en page s'adapte à la place disponible, sur grand comme sur petit écran, sans texte ni bouton coupé.
Côté administration, le journal d'audit indique désormais chaque appareil sous le nom choisi lors de l'invitation, et non plus sous le nom Windows du PC. Serveur à redéployer pour en profiter.
✨ En bref
Changement 🆕 Nouveau Plein écran pour la fenêtre du launcher et le menu d'administration : bouton entre « Réduire » et « Fermer », ou F11 🆕 Nouveau Le mode choisi (plein écran ou fenêtré) est retenu pour la fois suivante 💡 Amélioré Mise en page adaptée à la taille de l'écran : plus de place en plein écran, rien de coupé sur un petit écran 💡 Amélioré Journal d'audit : colonne « Appareil » dans l'export CSV, recherche par nom d'appareil 🐛 Corrigé Le journal d'audit affichait le nom Windows du PC au lieu du nom de l'appareil choisi à l'invitation 🛡️ Sécurité Le nom Windows du PC n'est plus envoyé au serveur ni conservé 🖧 Serveur Nom des appareils dans le journal d'audit : à redéployer (voir Mise à niveau) 🧪 Qualité 1 nouveau test automatisé (282 au total)
🖥️ Plein écran
Deux modes seulement, pour la fenêtre principale et le menu d'administration :
Mode Comportement Fenêtré Taille d'origine, coins arrondis et ombre ; toujours pas de redimensionnement par les bords ou les coins Plein écran La fenêtre s'agrandit comme une fenêtre Windows : tout l'écran où elle se trouve, barre des tâches visible (même en masquage automatique) ; ce n'est pas le plein écran exclusif d'un jeu - Bascule : bouton entre « Réduire » et « Fermer » (l'icône et l'info-bulle suivent le mode), ou touche F11.
- Le mode de chaque fenêtre est retenu pour la fois suivante (
window-modes.json, à côté delauncher-settings.json). - Une fenêtre réduite (barre des tâches ou icône près de l'horloge) revient dans son mode.
- Les autres fenêtres (paramètres, notes de version agrandies, messages) gardent leur taille fixe : elles ne contiennent pas assez d'informations pour le mériter.
📐 Mise en page adaptée à l'écran
Situation Effet Plein écran sur un grand écran Les notes de version s'élargissent (jusqu'à 560 px) ; les pages du menu d'administration utilisent toute la largeur Petit écran, mise à l'échelle Windows 125-150 % La fenêtre ne dépasse plus de l'écran ; si la place manque, le contenu est réduit d'un bloc, sans rien couper Présentation du jeu trop haute (description, liens et bandeau à la fois) Elle défile au lieu d'être coupée Plusieurs écrans Paramètres, notes agrandies et messages se limitent à l'écran de la fenêtre du launcher Menu d'administration
Élément Changement Messages d'erreur et de résultat Sur toute la largeur de la page (23 bandeaux) Pages en deux colonnes (« Jeux », « Notes de version », « Groupes et permissions ») Sur un très petit écran, la page entière défile en plus des deux colonnes : rien n'est coupé Navigation, titres, tableau de bord Libellés trop longs abrégés proprement (info-bulle pour le texte complet) Choix du jeu Liste à largeur souple Messages longs (boîtes de dialogue) Ils défilent, la fenêtre ne dépasse jamais l'écran 💡 Modulaire : une future page d'administration s'affiche dans la même fenêtre et profite du plein écran sans code supplémentaire. Une future fenêtre de module l'active avec deux attributs XAML. Règles de mise en page :
docs/ADMIN-ARCHITECTURE.md, § 5.3.
🏷️ Journal d'audit : nom des appareils
Jusqu'ici, à la connexion, le launcher envoyait « GameLauncher 2.4.1 (NOM-WINDOWS) » : c'est ce nom Windows qui apparaissait dans le journal, et non le nom de l'appareil choisi lors de l'invitation (« J'ai une invitation »).
Où Avant Maintenant Ligne « Connexion » GameLauncher 2.4.1 (DESKTOP-ABC123)appareil « PC bureau » · GameLauncher 2.5.0Chaque entrée liée à une clé IP et clé Appareil « PC bureau » · IP · clé Export CSV — Nouvelle colonne « Appareil » Recherche Nom, IP, clé Nom, appareil, IP, clé - Les anciennes entrées en profitent aussi : le nom de l'appareil est ajouté par le serveur à la lecture.
- Seules les lignes « Connexion » déjà écrites gardent leur texte d'origine : le journal n'est jamais réécrit (ajout seul).
🛡️ Sécurité
- Le nom Windows du PC n'est plus envoyé au serveur ; celui qu'envoient les launchers plus anciens est retiré par le serveur (ni journalisé, ni conservé dans la session).
- Le nom de l'appareil est ajouté par le serveur à la lecture, d'après
admins.json: il n'est jamais écrit dans les fichiers du journal, et ce champ ne peut venir que du serveur. - Export CSV : la nouvelle colonne suit les mêmes règles que les autres (cellules entre guillemets, aucune formule exécutée par le tableur).
window-modes.json: simple préférence d'affichage, sans donnée personnelle ; taille limitée, contenu vérifié, ignoré s'il est illisible.
🧪 Tests
Fichier Tests Server/AuditModuleTests.cs1 nouveau : nom de l'appareil choisi à l'enregistrement, nom Windows retiré d'un ancien launcher, jamais écrit dans le fichier du journal, absent pour une entrée sans clé Admin/AuditPanelTests.csComplété : colonne « Appareil » de l'export CSV, texte « Appareil « … » » de chaque entrée 282 tests au vert.
📂 Fichiers modifiés
Launcher (WPF) : plein écran et mise en page
src/GameLauncher/Controls/WindowModeAssist.cs(nouveau)src/GameLauncher/Controls/ScaleToFitDecorator.cs(nouveau)src/GameLauncher/Platform/WindowModeStore.cs(nouveau)src/GameLauncher/Themes/Controls.xamlsrc/GameLauncher/Themes/Icons.xamlsrc/GameLauncher/Themes/Admin.xamlsrc/GameLauncher/Converters/Converters.cssrc/GameLauncher/Views/MainWindow.xamlsrc/GameLauncher/Views/MainWindow.xaml.cssrc/GameLauncher/Views/Admin/AdminWindow.xamlsrc/GameLauncher/Views/Admin/AdminWindow.xaml.cssrc/GameLauncher/Views/ModernDialog.xamlsrc/GameLauncher/Views/ModernDialog.xaml.cssrc/GameLauncher/Views/ChangelogWindow.xaml.cssrc/GameLauncher/Views/SettingsWindow.xaml.cssrc/GameLauncher/Platform/WindowService.cssrc/GameLauncher/Services/AdminWindowService.cssrc/GameLauncher/App.xaml.cssrc/GameLauncher/GameLauncher.csproj(version 2.5.0)
Journal d'audit
src/GameLauncher.Contracts/Dtos/AuditDtos.cssrc/GameLauncher.Modules.Admin/Audit/AuditPanelViewModel.cssrc/GameLauncher.Modules.Admin/ViewModels/AdminEnvironment.cssrc/GameLauncher.Modules.Admin/Services/AdminLoginService.cs
Serveur
server/GameLauncher.Server/Modules/Auth/AuthModule.csserver/GameLauncher.Server/Modules/Audit/AuditModule.cs
Tests
tests/GameLauncher.Tests/Server/AuditModuleTests.cstests/GameLauncher.Tests/Admin/AuditPanelTests.cs
Documentation et notes
README.mddocs/ADMIN-ARCHITECTURE.mdtools/notes-launcher.txt
⬆️ Mise à niveau
- Joueurs : mise à jour automatique depuis la 2.4.1, aucune action requise. Le launcher démarre en mode fenêtré, comme avant ; F11 ou le nouveau bouton pour passer en plein écran.
- Serveur (Launcher API) : à redéployer (
server/deploy/LISEZMOI.md, étape 8 : étapes 1 et 2). Aucun réglage nouveau ; les sessions ouvertes sont fermées (reconnexion). Sans redéploiement, la colonne « Appareil » du journal reste vide. - Administrateurs : rien à faire. Le nom affiché pour un appareil est celui saisi dans « J'ai une invitation » (page « Mes appareils »).
🔏 La sécurité des mises à jour du launcher ne change pas : la signature numérique et l'empreinte SHA-256 de chaque nouvelle version sont vérifiées avant toute installation.
What's Changed
- Dev/2.5.0 in #125
Contributors
Full Changelog: v2.4.1...v2.5.0
Downloads