From 2bc86e30229b1a6f597aa4c779d1b706c793a636 Mon Sep 17 00:00:00 2001 From: BoulderBadgeDad Date: Tue, 9 Jun 2026 11:26:26 -0700 Subject: [PATCH] Settings: don't auto-save while on the Logs tab (#827) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Tacobell444: the Logs tab has no savable settings, but its live-viewer controls (source picker, filters, auto-scroll) were tripping the settings auto-save — each one POSTs /api/settings and logs "Settings saved successfully via Web UI", flooding app.log and drowning out the logs the user is trying to read. Fix: debouncedAutoSaveSettings bails when the active settings tab is 'logs' (checked via .stg-tab.active). Purely frontend — no save is scheduled while on that tab, so the backend never logs the save. Doesn't touch the existing _suppressSettingsAutoSave form-population guard, and every other tab auto-saves exactly as before; manual Save still works everywhere. --- webui/static/settings.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/webui/static/settings.js b/webui/static/settings.js index 380a0b09..f0defa8f 100644 --- a/webui/static/settings.js +++ b/webui/static/settings.js @@ -45,6 +45,11 @@ function debouncedAutoSaveSettings() { // fields on load — those aren't user edits and must not trigger a full // save (which re-initializes every backend service client). if (window._suppressSettingsAutoSave) return; + // #827: the Logs tab has no savable settings — its live-viewer controls + // (source picker, filters, auto-scroll) were tripping the auto-save and + // flooding app.log with "Settings saved" lines, drowning out the logs the + // user is trying to read. Never auto-save while the Logs tab is active. + if (document.querySelector('.stg-tab.active')?.dataset.tab === 'logs') return; if (settingsAutoSaveTimer) clearTimeout(settingsAutoSaveTimer); settingsAutoSaveTimer = setTimeout(() => saveSettings(true), 2000); }