;
- if (typeof window !== "undefined") {
- window.addEventListener("resize", () => {
+ $effect(() => {
+ window.addEventListener("mousedown", handleWindowClick);
+ const handleResize = () => {
resizing = true;
clearTimeout(resizeTimer);
resizeTimer = setTimeout(() => (resizing = false), 150);
- });
- }
+ };
+ window.addEventListener("resize", handleResize);
+ return () => {
+ window.removeEventListener("mousedown", handleWindowClick);
+ window.removeEventListener("resize", handleResize);
+ };
+ });
async function handleNewList() {
if (!newListName.trim()) return;
@@ -69,6 +72,8 @@
async function handleDeleteList(id: string) {
listMenuId = null;
+ const list = app.lists.find(l => l.id === id);
+ if (!confirm(`Delete list "${list?.title ?? id}" and all its tasks?`)) return;
await app.deleteList(id);
}
@@ -270,7 +275,7 @@
{#if wsMenuName === name}