Commit Graph

701 Commits

Author SHA1 Message Date
r-zakarya 49738d0b74 fix(apk): retour depuis le formulaire = revenir a l'entree, pas a la liste
Le formulaire se declare comme une vue ('state?view=edit') : la fleche de
l'en-tete et la touche retour du telephone le referment d'abord.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-25 15:27:14 +01:00
r-zakarya 29f737b831 ui(apk): icone et nom en tete du formulaire, arrondis unifies, retour au formulaire apres une action d'icone
L'icone se commet comme un champ : Delphi rouvrait l'entree et la vue de
lecture reprenait la place au milieu d'une modification. Le formulaire est
maintenant rouvert avec ce qui y etait deja tape.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-25 15:18:41 +01:00
r-zakarya 0f90b816fc fix(apk): le crayon par ligne disparait, l'edition passe par le formulaire
L'editeur d'une ligne n'a plus de bouton : sa machinerie part avec lui. Seule
la liste des dossiers en est gardee (folderSelect), pour que le champ Folder du
formulaire reste un choix et non une faute de frappe.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-25 15:05:58 +01:00
r-zakarya 0c12997ad4 feat(apk): edition de l'entree entiere en un seul enregistrement, et icone choisie dans la galerie
Un crayon ouvre un formulaire pre-rempli : tous les champs modifiables a la
fois, un seul Save, donc UN commit au lieu d'un par champ ('setfields',
plusieurs PatchEntryField dans le meme CommitChange).

L'icone quitte le menu de l'entree pour ce formulaire : From site (recherche),
Image... (galerie, reduite a 128 px, provenance custom) et Remove.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-25 14:57:58 +01:00
r-zakarya 5f1a98df7d ui(apk): le formulaire de nouvelle entree devient une seule carte
Sept champs faisaient sept cartes, chacune contenant un champ avec son propre
fond et ses coins - rectangle dans rectangle. Une carte, des lignes dedans, le
champ reduit a son trait de saisie ; le bouton Save sort de sa carte.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-25 14:39:31 +01:00
r-zakarya 6a98f113ee fix(apk): pas de menu Duplicate/Delete sur l'ecran d'une nouvelle entree
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-25 14:33:59 +01:00
r-zakarya 29d569c7ba docs(fillbar): la barre des taches active passe devant, mesures a l'appui
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-22 15:56:58 +01:00
r-zakarya 1ae1d482f0 fix(fillbar): remonte la barrette quand elle est recouverte, au lieu de la deplacer
Elle a le droit de se poser sur la barre des taches. Redemander HWND_TOPMOST
quand on l'est deja ne change rien : le shell restait devant au demarrage de
session et au menu Demarrer. Le passage NOTOPMOST -> TOPMOST force la remontee,
fait seulement quand le centre de la barrette appartient a une autre fenetre.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-22 15:38:05 +01:00
r-zakarya c1c7d9cd59 fix(fillbar): la position retenue est ramenee dans la zone de travail
Posee sur la barre des taches (TOPMOST elle aussi), la barrette passait
derriere elle au demarrage de Windows et a l'ouverture du menu Demarrer.
Mesure avant/apres sur ce poste : y=1037 (barre = 1032..1080) -> y=992.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-22 15:33:03 +01:00
r-zakarya 652815ea98 feat(quick-search): boutons par entree - utilisateur, mot de passe ou note, code 2FA (s'ils existent)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 23:15:49 +01:00
r-zakarya cfa2a798e5 docs(build): build-both.cmd sauvegarde les exe precedents dans PMServer-previous.zip
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 22:58:39 +01:00
r-zakarya dcb1ac63ce fix(totp): pas de notification 'toujours dans le tray' pendant le scan du QR
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 22:40:00 +01:00
r-zakarya e3904236a7 fix(totp): scan QR ecran - indices Byte dans ZXing (boucle infinie a 100 % CPU)
ZXing.Delphi declarait rgbIndex/luminanceIndex en Byte dans les conversions
octets bruts -> luminance : au-dela de 255 ils repassaient a 0, la boucle ne
finissait jamais. L'APK n'y passait pas (CreateFromBitmap). Mesure apres
correctif : 60 ms sur un ecran 1920x1080 avec TRY_HARDER, 86 ms sans QR.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 22:35:49 +01:00
r-zakarya 72f9acd733 feat(totp): scanner le QR 2FA affiche a l'ecran (capture + ZXing), seul un otpauth:// part vers la page
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 22:24:35 +01:00
r-zakarya 508d5345bf feat(fillbar): option fond transparent (cle de couleur), l'opacite reste sur les boutons
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 22:12:37 +01:00
r-zakarya 9d74839ec3 fix(settings): la section Sync renommee retrouve son onglet
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 16:19:57 +01:00
r-zakarya df2d0f55b9 docs(sync): libelle 'Git repository (Gitea or GitHub)' au lieu de Gitea seul
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 16:16:03 +01:00
r-zakarya 67b726e08c fix(sync): la verification 'depot public' se fait sans jeton, avant tout le reste
Un jeton faux faisait repondre 401 a GitHub avant tout verdict : le refus
d'un depot public ne pouvait pas s'exprimer. Public = visible en anonyme.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 16:04:50 +01:00
r-zakarya a2ac0e393b fix(sync): l'URL enregistree est convertie aussi a la lecture des reglages
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 16:00:10 +01:00
r-zakarya 329b0e3ce5 feat(sync): le PC accepte l'adresse du depot (github.com/O/R.git, Gitea) et la convertit en URL d'API
Garde : un dernier segment qui ressemble a un fichier (.json) reste une URL
WebDAV.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 15:40:45 +01:00
r-zakarya 365ee2f596 docs(autofill): note l'idee de la case no-autofill dans l'editeur
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 15:31:11 +01:00
r-zakarya 994aaccac4 docs(autofill): etiquette no-autofill
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 15:29:37 +01:00
r-zakarya ab1da7e319 feat(autofill): etiquette no-autofill pour exclure une entree, copie du mot de passe toujours visible en vue tableau
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 15:22:14 +01:00
r-zakarya f1b7dd9bff docs(apk): note les idees 'identifiant puis mot de passe' et 'remplissage automatique Android'
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 15:06:21 +01:00
r-zakarya e4930f448b docs(apk): recherche prete, retour apres copie, grace de 2 min, bouton 2FA
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 15:03:58 +01:00
r-zakarya 0e32a51bf1 feat(apk): bouton de copie du code 2FA sur chaque ligne de la liste
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 14:58:09 +01:00
r-zakarya 255d685e73 fix(apk): 2 min de grace apres une copie, retour automatique decoche par defaut
Android ne laisse pas choisir l'app qui passe devant : moveTaskToBack
ramenait souvent l'ecran d'accueil. Le coffre se reverrouillait aussi
apres 30 s, avant qu'on revienne chercher le mot de passe.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 14:48:23 +01:00
r-zakarya f99fb90ed8 fix(apk): compilation des reglages Copy and search (declarations et TPath de System.IOUtils)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 14:35:45 +01:00
r-zakarya f7ad65c02d feat(apk): Settings -> Copy and search, deux cases pour le retour apres copie et le clavier sur la recherche
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 14:33:18 +01:00
r-zakarya 946880ecf4 feat(apk): copier renvoie a l'app d'avant, recherche prete a l'ouverture et au retour
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 14:28:52 +01:00
r-zakarya 9a09cc5d29 feat: survol a l'accent sur la barrette, grande fleche de retour dans l'APK
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 14:16:45 +01:00
r-zakarya 95c308107c fix(apk): Save enregistre l'URL et le jeton tout de suite, sans attendre un telechargement
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 12:36:22 +01:00
r-zakarya a9640ab48f fix(apk): la release ne preremplit plus l'adresse du depot de l'auteur
Verifie : ni la bibliotheque release ni l'exe PC ne contiennent plus
ai-agents4you.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 12:29:27 +01:00
r-zakarya 4555a791b5 fix(apk): plus d'ecran bleu apres le premier scan (la vue web reste masquee apres l'autorisation camera)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 12:22:13 +01:00
r-zakarya d310b2004f fix(apk): coffre ferme, le champ du mot de passe de synchro dit qu'il est range dans le coffre
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 12:12:47 +01:00
r-zakarya 119b493a43 fix(apk): le message d'erreur des reglages est bien rouge
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 12:04:47 +01:00
r-zakarya 05fc75e8f8 fix(apk): un faux mot de passe de synchro n'ouvre plus le depot, et il se verifie a l'enregistrement
- OpenContainer reutilisait la cle de l'ancien mot de passe : jamais tant
  qu'un nouveau n'est pas verifie
- un essai rate vidait FKey (parametres out TBytes) : derivation dans des
  locales, rangee seulement apres succes
- Save coffre ouvert : verification immediate (DoSync), le bon mot de passe
  est range dans le coffre scelle ; coffre ferme, le champ est grise

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 11:51:02 +01:00
r-zakarya ac97d6c207 docs: reglages de la barrette, GitHub et depot prive, erreurs et mot de passe de synchro sur le telephone
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 11:39:32 +01:00
r-zakarya 395d7a70d4 fix(apk): un mot de passe de synchro change est verifie contre le depot avant toute publication
Le sha inchange faisait repondre 'rien n'a change' sans dechiffrer : un
mot de passe faux passait pour bon. Tant qu'il n'est pas verifie, le depot
est retelecharge en entier ; la synchro reprend ensuite si rien n'echoue.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 11:38:30 +01:00
r-zakarya 891abf7a9d fix(fillbar): l'onglet Fill bar se met a jour quand la barrette change par clic droit ou par le tray
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 11:19:00 +01:00
r-zakarya ba06d4584e feat(fillbar): bouton Settings sur la barrette (icone roue ou texte), reglable comme les autres
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 11:14:41 +01:00
r-zakarya c809f4e4c5 fix(apk): le mot de passe de synchro enregistre dans les reglages n'est plus ecrase par celui du cache
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 11:13:24 +01:00
r-zakarya 9947ce5718 feat(fillbar): Fill bar settings... au clic droit, ouvre l'onglet par-dessus l'entree en cours
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 11:08:52 +01:00
r-zakarya af6e8a2d9a feat(apk): Save des reglages actif seulement s'il y a un changement, coche apres enregistrement
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 10:59:03 +01:00
r-zakarya 3c16b41714 feat(sync): GitHub en plus de Gitea, et refus d'un depot public
GitHub parle la meme API des contenus (base64, sha, corps du PUT) : meme
chemin, reconnu a api.github.com/repos/. User-Agent pose partout (GitHub
refuse sans). Un depot public est refuse avant toute lecture ou ecriture,
Gitea comme GitHub : l'historique garde tous les instantanes chiffres.
Telephone : github.com/O/R se convertit en URL d'API et inversement.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 10:36:18 +01:00
r-zakarya d7a8b4ddff feat(fillbar): onglet Fill bar dans les reglages, icones ou texte, boutons Add et Search
- boutons choisis (Full, Password, 2FA, Add current window, Search, Open),
  style icones (Segoe MDL2 Assets) ou texte, opacite au repos, allumee ou non
- clic droit sur la barrette : Show icons / Show text en plus de l'opacite
- info-bulles sur chaque bouton
- Add et Search reprennent les corps extraits de Ctrl+Shift+A et Ctrl+Shift+Q

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 10:24:26 +01:00
r-zakarya ba8c4205f9 feat(apk): generateur de mot de passe, erreurs du depot affichees dans les reglages
- de sur le champ mot de passe (nouvelle entree et modification), tirage
  crypto.getRandomValues avec rejet
- Download vault sans reglages ouvre les reglages
- 404/401 tranches (jeton refuse, utilisateur ou depot inexistant, fichier
  absent) et mauvais mot de passe de synchro : les reglages s'ouvrent avec
  le message en rouge

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 10:18:47 +01:00
r-zakarya 3eb26e23e5 docs(sync): note l'idee d'un bouton Reinitialiser l'historique, sans la faire
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 22:55:18 +01:00
r-zakarya 9b79d62553 fix(apk): l'aide de la synchro s'adapte selon que le coffre est ouvert
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 22:34:02 +01:00
r-zakarya 061ea211c0 docs(apk): l'aide de la synchro ne renvoie plus a une section masquee
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 22:29:00 +01:00