summaryrefslogtreecommitdiff
path: root/web
diff options
context:
space:
mode:
Diffstat (limited to 'web')
-rw-r--r--web/app.js6
1 files changed, 6 insertions, 0 deletions
diff --git a/web/app.js b/web/app.js
index 3ff4809..95fce38 100644
--- a/web/app.js
+++ b/web/app.js
@@ -219,6 +219,11 @@ export function isUserEditing(activeEl = (typeof document !== 'undefined' ? docu
if (tag === 'INPUT' || tag === 'TEXTAREA') return true;
if (activeEl.isContentEditable) return true;
if (activeEl.closest('[role="dialog"]') || activeEl.closest('dialog')) return true;
+ // Also block re-renders when any modal/panel is open, even without focus.
+ if (typeof document !== 'undefined') {
+ if (document.querySelector('dialog[open]')) return true;
+ if (document.getElementById('task-panel')?.classList.contains('open')) return true;
+ }
return false;
}
@@ -811,6 +816,7 @@ async function handleStartNextTask(btn) {
async function poll() {
try {
const tasks = await fetchTasks();
+ if (isUserEditing()) return;
renderTaskList(tasks);
renderActiveTaskList(tasks);
if (isRunningTabActive()) {