diff --git a/assets/js/app.js b/assets/js/app.js index 9762a72..4f4df44 100644 --- a/assets/js/app.js +++ b/assets/js/app.js @@ -1101,6 +1101,9 @@ function translatePage() { // Populate the language selector dropdown function _populateLanguageSelector() { const sel = document.getElementById('setting-language'); + // Screensaver toggle + const ssEl = document.getElementById('setting-screensaver-enabled'); + if (ssEl) ssEl.checked = s.screensaver_enabled === true; if (!sel) return; sel.innerHTML = ''; for (const [code, name] of Object.entries(_SUPPORTED_LANGS)) { @@ -2124,6 +2127,9 @@ async function saveSettings() { s.dietary = document.getElementById('setting-dietary').value.trim(); // Camera s.camera_facing = document.getElementById('setting-camera-facing').value; + // Screensaver + const ssEl = document.getElementById('setting-screensaver-enabled'); + if (ssEl) s.screensaver_enabled = ssEl.checked; // Meal plan enabled toggle const mpEnabledEl = document.getElementById('setting-meal-plan-enabled'); if (mpEnabledEl) s.meal_plan_enabled = mpEnabledEl.checked; @@ -11691,6 +11697,8 @@ function initScreensaverShortcuts() { } function initInactivityWatcher() { + const s = getSettings(); + if (!s.screensaver_enabled) return; // disabled by default const events = ['pointerdown', 'pointermove', 'keydown', 'scroll', 'touchstart']; events.forEach(evt => { document.addEventListener(evt, () => { diff --git a/index.html b/index.html index 573c652..b2b19b8 100644 --- a/index.html +++ b/index.html @@ -1088,6 +1088,17 @@
La pagina verrà ricaricata per applicare la nuova lingua.
+Mostra un orologio con fatti utili dopo 5 minuti di inattività. Di default è disattivato.
+