--- id: TASK-122 title: Canvas element reminder scheduling UX enhancements status: Done assignee: [] created_date: '2026-03-17 01:01' labels: - canvas - rschedule - UX dependencies: [] references: - website/canvas.html priority: medium --- ## Description Add multiple UX affordances for scheduling reminders on canvas shapes: floating calendar icon on selected shapes, right-click context menu option, drag-to-calendar compact mode, and email notifications on reminder creation. ## Acceptance Criteria - [ ] #1 Floating 📅 icon appears near top-right of selected shape - [ ] #2 Clicking calendar icon toggles the reminder widget - [ ] #3 Right-click context menu shows 'Schedule a reminder' option - [ ] #4 Context menu option opens reminder widget for the target shape - [ ] #5 Dragging a shape for 200ms+ shows compact calendar in bottom-right - [ ] #6 Hovering over calendar days during drag highlights them - [ ] #7 Releasing shape over a highlighted day creates the reminder - [ ] #8 Reminder API call includes notifyEmail when user email is available - [ ] #9 Email is fetched from EncryptID and cached for session - [ ] #10 Feedback message indicates email notification when applicable ## Final Summary Implemented 4 reminder scheduling UX enhancements in `website/canvas.html` (156 insertions):\n\n1. **Right-click context menu** — \"📅 Schedule a reminder\" option in shape context menu opens reminder widget\n2. **Email notification** — Fetches user email from EncryptID `/auth/api/account/security`, caches it, passes `notifyEmail` to rSchedule API, shows confirmation in feedback\n3. **Floating calendar icon** — 28px circular 📅 button positioned at selected shape's top-right corner, repositions on scroll/zoom, toggles widget on click\n4. **Drag-to-calendar** — Compact calendar appears after 200ms of shape drag, day cells highlight on hover, releasing over a day creates the reminder