From aece7049c07543a2c6239abc7bef00d687d391f0 Mon Sep 17 00:00:00 2001 From: mARTin Date: Sat, 21 Mar 2026 19:42:20 +0100 Subject: [PATCH] fix: make kanban cards clickable to open notes/details sidebar Clicking a kanban card now opens the notes sidebar for editing notes, subtasks, and other task details. Cards also show subtask count and notes indicator. Added FileText icon import. v1.54.1 Co-Authored-By: Claude Opus 4.6 --- package.json | 2 +- src/components/WeeklyView.tsx | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 401af08..7e5179a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "my-weekly-todo-list", - "version": "1.54.0", + "version": "1.54.1", "description": "A web-based weekly task management application that organizes to-dos and calendar events in a single, intuitive weekly view", "main": "index.js", "scripts": { diff --git a/src/components/WeeklyView.tsx b/src/components/WeeklyView.tsx index 900b10b..9cdd627 100644 --- a/src/components/WeeklyView.tsx +++ b/src/components/WeeklyView.tsx @@ -78,6 +78,7 @@ import { ListTodo, Filter, Pencil, + FileText, } from "lucide-react"; // Types @@ -6454,6 +6455,13 @@ export default function WeeklyView() { e.dataTransfer.setData("text/kanban-task", task.id); e.dataTransfer.effectAllowed = "move"; }} + onClick={(e) => { + // Don't open notes if clicking checkbox, contentEditable, or buttons + const target = e.target as HTMLElement; + if (target.tagName === "INPUT" || target.contentEditable === "true" || target.closest("button")) return; + setSelectedTaskForNotes(task); + }} + style={{ cursor: "pointer" }} >
{effectiveShowTaskCheckboxes && ( @@ -6479,6 +6487,16 @@ export default function WeeklyView() { {task.title}
+ {task.subTasks && task.subTasks.length > 0 && ( +
+ {task.subTasks.filter(st => st.completed).length}/{task.subTasks.length} {language === "de" ? "Unteraufgaben" : "subtasks"} +
+ )} + {task.markdownContent && ( +
+ {language === "de" ? "Notizen" : "Notes"} +
+ )} {(task.scheduledDate || task.startTime) && (
{task.scheduledDate && new Date(task.scheduledDate).toLocaleDateString(language, { weekday: "short", month: "short", day: "numeric" })}