- Add Tauri permissions for window minimize/maximize/close/drag
- Rewrite WindowControls with plain buttons + stopPropagation
to prevent drag region from capturing button clicks
- Add data-tauri-drag-region to TopBar child containers
- Make OpenPylon text pointer-events-none and select-none
- TopBar: call closeBoard() before navigating back to prevent data loss
- board-store: guard debouncedSave against race condition when board is
closed during an in-flight save
- board-store: add missing updatedAt to setColumnWidth
- useKeyboardShortcuts: remove duplicate Ctrl+K handler that prevented
command palette from toggling closed
- AttachmentSection: wire up Tauri file dialog for adding attachments
with link/copy mode support
Fixed React hooks rules violation where useState and useCallback were
called after a conditional return in BoardView. Removed unused
attachmentMode prop from AttachmentSection (can be re-added when file
dialog is wired up).
- CardDetailModal: two-panel layout (60/40) with inline title editing
- MarkdownEditor: edit/preview toggle with react-markdown + remark-gfm
- ChecklistSection: add/toggle/edit/delete items with progress counter
- LabelPicker: toggle labels + create new labels with color swatches
- DueDatePicker: date input with relative time and overdue styling
- AttachmentSection: list with remove, placeholder add button
- Wired into BoardView via selectedCardId state