diff --git a/js/app.js b/js/app.js index 5a2c137..6e135ae 100644 --- a/js/app.js +++ b/js/app.js @@ -4260,8 +4260,10 @@ function buildCustomFieldRow(field, idx, rerender) { } // Reveal eye — only meaningful for secret fields. + // Two nearby toggles that look alike: the eye is a temporary peek, the lock + // changes what is stored. Spell that out — the visible effect overlaps. const eye = el('button', { class: 'icon-btn icon-btn-sm', type: 'button', - title: 'Show / hide' }); + title: 'Reveal for now (does not change the setting)' }); eye.appendChild(icon('i-eye')); // All button handlers below stopPropagation — see CLAUDE.md // "Click-outside-slideover bug" for why. @@ -4281,7 +4283,9 @@ function buildCustomFieldRow(field, idx, rerender) { const secretBtn = el('button', { class: 'so-custom-secret-toggle' + (field.is_secret ? ' is-on' : ''), type: 'button', - title: field.is_secret ? 'Secret field — value hidden' : 'Public field', + title: field.is_secret + ? 'Stored as secret — masked every time it is opened. Click to make it public.' + : 'Public field — shown in clear. Click to store it as a secret.', }, field.is_secret ? '🔒' : '👁'); secretBtn.addEventListener('click', ev => { ev.stopPropagation();