docs: formulaire d'edition, scan QR 2FA, synchro et reseau, Copy / Fill
CLAUDE.md : interrupteur Copy / Fill de la recherche rapide et pourquoi le tray copie seulement ; QR lu mais pas de 2FA ; nom par defaut data.json, messages de commit neutres, 8 s / 3 essais sur le reseau. README Android : edition de l'entree entiere en un commit, oeil, icone depuis la galerie, scan 2FA ; verification a l'ouverture, depot vide = creation ; les pieges 'view' qui defocalisait les champs et 'toast' qui etait un <div>. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -513,7 +513,10 @@ faire semblant couterait plus que de l'admettre.
|
||||
|
||||
**Le reste du travail Android est dans
|
||||
[android-client/README.md](android-client/README.md)**, tenu a jour le
|
||||
2026-09-17 : les trois facons d'ouvrir le coffre (verrouillage d'ecran, code
|
||||
2026-09-28 — dont le formulaire d'edition de l'entree entiere, le scan du QR
|
||||
2FA, la verification a l'ouverture au lieu du retelechargement, et deux pieges
|
||||
de la page (`view` qui defocalisait les champs, `toast` qui etait un `<div>`) ;
|
||||
et avant cela, le 2026-09-17 : les trois facons d'ouvrir le coffre (verrouillage d'ecran, code
|
||||
d'application, mot de passe), la copie de secours `vault-recover.bin` qui
|
||||
survit au schema retire, le scanner de QR (`ThirdParty/ZXing`), le define
|
||||
`AllowCreateLocal` — creer un coffre sur le telephone est reserve au debogage —
|
||||
@@ -794,7 +797,10 @@ bureau virtuel** en mémoire (GDI, octets bruts, jamais sur disque) et le décod
|
||||
par ZXing.Delphi — le même que l'APK, `android-client\ThirdParty\ZXing` dans le
|
||||
chemin de recherche du `.dproj`. Pas de sélection de zone : le décodeur trouve
|
||||
le QR où qu'il soit. **Seul un `otpauth://` repart vers la page**
|
||||
(`Bridge.onScreenQr`), le reste de l'écran ne quitte pas l'exe. Format `BGR32`
|
||||
(`Bridge.onScreenQr(texte, trouvé)`), le reste de l'écran ne quitte pas l'exe.
|
||||
Le second argument dit qu'**un QR a été lu** même s'il n'est pas un code 2FA :
|
||||
« This QR code is not a 2FA code » plutôt que « aucun QR » (cas vu : un QR
|
||||
**dynamique** de générateur en ligne encode un lien de suivi, pas le texte). Format `BGR32`
|
||||
et non `BGRA32` : l'octet alpha d'une capture GDI vaut 0, lu comme transparent
|
||||
→ image blanche.
|
||||
|
||||
@@ -1163,6 +1169,25 @@ QR que l'application Android scanne elle-meme.
|
||||
- Telephone : `https://github.com/O/R` <-> URL d'API, comme pour Gitea. Le QR
|
||||
du PC porte aussi la forme courte `github.com/O/R`.
|
||||
|
||||
### Ce que le depot laisse voir, et le reseau (2026-09-26)
|
||||
|
||||
- **Nom par defaut `data.json`** (`SYNC_DEFAULT_FILE`, JS et page du
|
||||
telephone ; `SyncDefaultFile` dans le QR). `vault-sync.json` annoncait un
|
||||
coffre a qui parcourt la liste des depots. Les configurations existantes
|
||||
gardent leur nom : c'est l'URL complete qui est enregistree. **Le QR ne
|
||||
raccourcit que le nom par defaut courant** — un autre nom voyage en URL
|
||||
complete, sinon le telephone rallongerait vers `data.json` et les deux
|
||||
appareils ne liraient pas le meme fichier.
|
||||
- **Messages de commit neutres** : `update from desktop` / `update from phone`.
|
||||
Le poste ecrivait `sync from <utilisateur du coffre>`, le telephone decrivait
|
||||
ce qu'il faisait. Le detail reste dans le journal local.
|
||||
- **8 s pour se connecter, 30 s pour repondre, trois essais sur status 0**
|
||||
(poste et telephone). Mesure : `api.github.com` rend plusieurs adresses ;
|
||||
`140.82.121.5` n'est joignable depuis ce reseau ni par l'application ni par un
|
||||
navigateur, `140.82.121.6` repond en 0,22 s. Un navigateur passe a la
|
||||
suivante aussitot ; nous attendions le delai entier. Un 404 ou un 409 sont
|
||||
des reponses et ne relancent rien.
|
||||
|
||||
### Idee gardee : « Reinitialiser l'historique » du depot de synchro
|
||||
|
||||
**Rien n'est fait, et le code actuel reste tel quel** (decide le 2026-09-17).
|
||||
@@ -1484,6 +1509,15 @@ après chaque `DELETE /attachments/{id}`. Un petit vault sain ne paie rien.
|
||||
→ retombe sur pwd).
|
||||
Fix clipboard : `MinimizeToTray(AClearClipboard=False)` via `keepclip=1`
|
||||
pour ne pas effacer le pwd juste copié quand on re-minimise.
|
||||
**Boutons par ligne** (2026-09-18) : utilisateur, mot de passe ou note, 2FA —
|
||||
seulement ceux qui existent. Une **note est toujours copiée**, même en Fill :
|
||||
tapée, chacun de ses retours à la ligne partirait comme un Entrée.
|
||||
**Interrupteur Copy / Fill** (2026-09-28, `qsFills()`) : visible seulement
|
||||
quand une fenêtre cible existe (Ctrl+Shift+Q, bouton Search de la barrette).
|
||||
Depuis le tray, pas de cible — cliquer le tray donne le premier plan à la
|
||||
barre des tâches — donc copie seule ; suivre « la dernière fenêtre active »
|
||||
a été écarté : les frappes partiraient au mauvais endroit si l'utilisateur a
|
||||
changé d'application entre-temps. Choix retenu en pref DPAPI `qsCopy`.
|
||||
- **Custom fields combobox éditable** : les champs avec `options` (card
|
||||
brand, expiry…) rendent un `<input>` + menu custom `.so-combo` (flèche =
|
||||
toutes les options, input = frappe libre). PAS un `<datalist>` natif
|
||||
|
||||
Reference in New Issue
Block a user