From a81fd8841415c0f799e106f3a52be5ba38340a77 Mon Sep 17 00:00:00 2001 From: r-zakarya <82443831+r-zakarya@users.noreply.github.com> Date: Fri, 28 Aug 2026 14:58:18 +0100 Subject: [PATCH] fix(android): la page revenait pas apres un verrouillage hors du coffre Le masquage ne demande rien - il suffit de ne pas etre sur l'accueil pour que la vue disparaisse avant la capture des applications recentes, coffre ouvert ou non. La restitution, elle, exigeait un coffre ouvert. Consulter les REGLAGES coffre ferme, puis laisser le telephone se verrouiller, cachait donc la page pour de bon : au retour il ne restait que le fond de la fenetre, un aplat bleu sans rien dessus et sans rien pour en sortir. La vue revient maintenant dans tous les cas, et APRES le verrouillage eventuel pour ne jamais montrer une liste qu'on vient d'effacer. Co-Authored-By: Claude Opus 5 --- mainApk.pas | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/mainApk.pas b/mainApk.pas index 71d4704..e0364cf 100644 --- a/mainApk.pas +++ b/mainApk.pas @@ -2534,20 +2534,31 @@ begin TApplicationEvent.EnteredBackground: FBackgroundAt := Now; + // LE MASQUAGE NE DEMANDE RIEN, LA RESTITUTION EXIGEAIT UN COFFRE OUVERT. + // + // C'est toute l'affaire : plus haut, il suffit de ne pas etre sur l'accueil + // pour que la vue disparaisse - coffre ouvert ou non. Ici, elle ne revenait + // que si le coffre l'etait. Consulter les REGLAGES coffre ferme, puis + // laisser le telephone se verrouiller, cachait donc la page pour de bon : + // au retour il ne restait que le fond de la fenetre, un aplat bleu sans + // rien dessus et sans rien pour en sortir. + // + // La vue revient donc dans tous les cas - mais APRES le verrouillage + // eventuel, pour ne jamais montrer une liste qu'on vient d'effacer. TApplicationEvent.BecameActive: - if FVault.Count > 0 then begin - if (FBackgroundAt > 0) and - (SecondsBetween(Now, FBackgroundAt) >= BACKGROUND_GRACE_SECONDS) then - LockVault - else + if FVault.Count > 0 then begin - // Retour a temps : on rend l'ecran quitte, pas un autre. La page a - // garde son etat, elle n'a ete que masquee. - FLayWeb.Visible := True; - FWeb.Visible := True; - Touch; + if (FBackgroundAt > 0) and + (SecondsBetween(Now, FBackgroundAt) >= BACKGROUND_GRACE_SECONDS) then + LockVault + else + // Retour a temps : on rend l'ecran quitte, pas un autre. La page a + // garde son etat, elle n'a ete que masquee. + Touch; end; + FLayWeb.Visible := True; + FWeb.Visible := True; FBackgroundAt := 0; end; end;