12 Commits

Author SHA1 Message Date
Thomas Fransolet
0df5dc03fa Web mobile : le clavier se refermait aussitot ouvert sur le login
Le meta viewport manquant n'expliquait pas tout : le clavier s'ouvrait puis se
refermait apres une demi-seconde. C'est le focus qui etait perdu, pas la saisie
qui n'arrivait pas.

Sur Flutter web, un AutofillGroup se materialise par un <form> DOM qui porte les
inputs caches par lesquels passe la saisie. L'ouverture du clavier redimensionne
la fenetre, l'ecran se reconstruit, le groupe d'autofill est renegocie et le
<form> recree : l'input focus disparait avec lui. Sur desktop rien ne
redimensionne au clic, d'ou un bug invisible hors mobile.

L'AutofillGroup est retire — les autofillHints portes par chaque champ suffisent
au navigateur pour proposer le remplissage, le groupe ne servait qu'a
finishAutofillContext. Trois protections completent la correction :

- les deux champs passent par un TextEditingController detenu par le State, donc
  la saisie survit a une reconstruction, la ou initialValue repartait de zero ;
- ils portent une ValueKey stable, pour etre reapparies plutot que recrees si la
  structure de leurs freres bouge ;
- le Scaffold ne se redimensionne plus a l'ouverture du clavier ; le contenu est
  deja dans un SingleChildScrollView, rien ne reste masque.

Au passage, le pre-remplissage de developpement (localhost) etait ecrit dans
build() a chaque reconstruction : il passe dans initState, ou il a du sens.

Le routeur, lui, etait fabrique dans le builder d'un FutureBuilder et l'appel a
getInstanceInfo partait de l'arbre passe a runApp. Chaque passage du builder
rendait un GoRouter neuf, donc un arbre neuf et un historique perdu. Les deux
sont desormais resolus une fois, avant runApp — 45 lignes de moins.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-08 22:07:17 +02:00
Thomas Fransolet
820cd9efa8 Misc update ressource to mediatheque, refonte visuelle complète (WIP) 2026-09-04 16:50:03 +02:00
Thomas Fransolet
0ffe261e86 Add audio, video, image, pdf and json files (online and local) 2023-12-17 16:14:39 +01:00
a3a62d1903 Null safety ! 2023-04-01 16:52:13 +02:00
89502ce5d1 Update beaconId as an integer 2023-02-17 17:46:54 +01:00
99aaad3f50 Add local storage + update audioIds for Article + fix small layout bugs 2022-12-22 14:32:43 +01:00
e3beb6c7f8 Change reorder section size + add search 2022-06-30 21:08:58 +02:00
Thomas Fransolet
86e4beb362 Remember me + encrypt password in json file ! 2021-07-29 16:14:39 +02:00
Thomas Fransolet
6fa8145f53 Add loading animation 2021-07-01 17:05:47 +02:00
Thomas Fransolet
0b05d1bd3d update service generation + update layout for edit device info (dropdown) 2021-06-23 22:44:26 +02:00
Thomas Fransolet
1ed3912b27 Configuration detail page + navigation between list and detail + confirm dialog + color picker + string input container 2021-04-29 21:32:00 +02:00
Thomas Fransolet
ea7f3876c1 Add login screen + logic + appcontext + redirection to main 2021-04-20 17:10:15 +02:00