diff --git a/public/app.js b/public/app.js index c1a6890..336bd3f 100644 --- a/public/app.js +++ b/public/app.js @@ -67,6 +67,15 @@ document.addEventListener('DOMContentLoaded', () => { // State let todos = {}; let currentList = 'List 1'; + let saveTimeout; + + // Drag-and-drop debouncer + function queueSaveTodos() { + clearTimeout(saveTimeout); + saveTimeout = setTimeout(() => { + saveTodos(); + }, 300); + } // List Management function initializeLists(data) { @@ -438,7 +447,7 @@ document.addEventListener('DOMContentLoaded', () => { return activeTodos.find(t => t.text === item.getAttribute('data-todo-id')); }); todos[currentList] = [...newOrder, ...completedTodos]; - saveTodos(); + queueSaveTodos(); } } });