42 lines
2.1 KiB
Markdown
42 lines
2.1 KiB
Markdown
---
|
|
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
|
|
|
|
<!-- SECTION:DESCRIPTION:BEGIN -->
|
|
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.
|
|
<!-- SECTION:DESCRIPTION:END -->
|
|
|
|
## Acceptance Criteria
|
|
<!-- AC:BEGIN -->
|
|
- [ ] #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
|
|
<!-- AC:END -->
|
|
|
|
## Final Summary
|
|
|
|
<!-- SECTION:FINAL_SUMMARY:BEGIN -->
|
|
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
|
|
<!-- SECTION:FINAL_SUMMARY:END -->
|