From: Christian Heller Date: Sun, 27 Apr 2025 16:21:26 +0000 (+0200) Subject: On taint, also prevent user from closing/reloading window without confirmation. X-Git-Url: https://plomlompom.com/repos/%22https:/validator.w3.org/do_day?a=commitdiff_plain;h=9320d8ad546ff2cfe96866dd0711be278afe1ad5;p=ledgplom On taint, also prevent user from closing/reloading window without confirmation. --- diff --git a/src/templates/_macros.tmpl b/src/templates/_macros.tmpl index dc25e0b..05dc359 100644 --- a/src/templates/_macros.tmpl +++ b/src/templates/_macros.tmpl @@ -128,6 +128,11 @@ function taint() { Array.from(document.getElementsByClassName('disable_on_change')).forEach((el) => { recursive_span_disable(el); }); + // try to catch user closing or reloading window + window.addEventListener('beforeunload', function(e) { + e.preventDefault(); + e.returnValue = true; } + ); // remove oninput handlers no longer needed (since we only ever go one way) Array.from(document.querySelectorAll('*') ).filter(el => (el.oninput !== null)