diff --git a/android-client/web/app.html b/android-client/web/app.html
index d4a3970..42a09c4 100644
--- a/android-client/web/app.html
+++ b/android-client/web/app.html
@@ -340,8 +340,13 @@
[hidden] { display: none !important; }
+ /* AU-DESSUS DES VOILES. Sans z-index, le message se peignait DERRIERE
+ l'ecran des reglages (80) : "Unlock code set" partait bien, mais sous la
+ page, et ne se decouvrait qu'en sortant - quand il ne s'etait pas deja
+ eteint. Un message qui ne se voit pas la ou on l'a provoque ne sert a
+ rien. Au-dessus du voile d'attente (90) aussi, pour la meme raison. */
.toast {
- position: fixed; left: 12px; right: 12px; bottom: 14px;
+ position: fixed; left: 12px; right: 12px; bottom: 14px; z-index: 100;
background: rgba(10,20,40,.92); color: var(--text);
border-radius: var(--radius-s); padding: 12px 16px; font-size: 14px;
text-align: center; opacity: 0; transition: opacity .2s;
@@ -557,6 +562,10 @@
password that opens a vault created on this phone - that one is asked for
on the home screen.
+
+
Unlock code
+
Diagnostics
@@ -675,6 +685,10 @@ var authMode = 'open';
// dernier ecrasait le premier. Chacun met a jour sa variable, la fonction
// tranche.
var pinNeeded = false;
+// COFFRE OUVERT OU NON, du point de vue de la page. Delphi le dit sans le dire :
+// setVault n'arrive qu'avec un coffre en main, et wipe accompagne chaque
+// verrouillage. Deux points, et ils suffisent.
+var vaultOpen = false;
// L'ACCUEIL SE LIT DE HAUT EN BAS : aller chercher le coffre, regler, et creer
// en dernier - c'est l'ordre des frequences, pas celui du code. La creation
// etait en tete parce que son bloc etait ecrit en premier dans la page.
@@ -1496,6 +1510,7 @@ function openSettings() {
document.getElementById('sTok').value = elTok.value;
document.getElementById('sPwd').value = elPwd.value;
document.getElementById('sPinNew').value = '';
+ document.getElementById('secCode').hidden = !vaultOpen;
showLog(false);
document.body.classList.add('on-settings');
send('state?view=settings');
@@ -1578,6 +1593,7 @@ document.getElementById('back').addEventListener('click', goList);
// --- appele par Delphi -----------------------------------------------------
var PM = {
setVault: function (json) {
+ vaultOpen = true;
var d = JSON.parse(json);
entries = d.entries || [];
folders = d.folders || [];
@@ -1782,6 +1798,7 @@ var PM = {
// Efface tout ce qui est en clair. Appele au passage en arriere-plan et au
// verrouillage : le tas JS n'est pas efface par le masquage de la vue.
wipe: function () {
+ vaultOpen = false;
entries = []; folders = []; detailRows = [];
document.getElementById('rows').innerHTML = '';
document.getElementById('fields').innerHTML = '';