Commit Graph
13 Commits
Author SHA1 Message Date
LeoVasanko 78045e89df Event overlay, smaller events to fit on screen, forfeit horizontal scaling by text width. Cleanup. 2025-09-24 03:52:21 +00:00
LeoVasanko b9bd74b322 Event titles style tuning. Larger text etc. 2025-09-24 02:12:16 +00:00
LeoVasanko 2a1070601a Repair event grid scaling when there are many events per day. 2025-09-24 00:14:04 +00:00
LeoVasanko b60a8652ee Transparent event bars. 2025-09-23 23:52:39 +00:00
LeoVasanko 456905d699 Much simpler undo/redo handling, bugs fixed and less code. 2025-08-28 01:54:10 +00:00
LeoVasanko 54625bb70f Event resize/move bugs and UX. 2025-08-27 21:42:23 +00:00
LeoVasanko eb9fe9b7aa Use hard ends on event bars when they cross between weeks. 2025-08-27 21:15:08 +00:00
LeoVasanko de36829058 Refactor modules for consistency 2025-08-27 21:09:19 +00:00
LeoVasanko 5892897be2 Fix recurrent event splitting being broken after prior refactoring. 2025-08-27 20:51:36 +00:00
LeoVasanko 45b95fc67c Mouse/touch event handling improvement
- prefer passive handlers
- fix event moving on touch
- faster selection updates
2025-08-27 20:04:29 +00:00
LeoVasanko d90192e0a3 Event search (Ctrl+F), locale/RTL handling, weekday selector workday/weekend, refactored event handling, Firefox compatibility (#3)
Major refactoring for cleanup, with various bugfixes.

Weekday selector in Settings now shows workdays/weekend bars based on current locale (also used to choose default values). Weekday selector in event dialog uses the days set in settings, as expected.
2025-08-27 11:41:46 +00:00
LeoVasanko dbe4c99b07 Major new version (#2)
Release Notes

Architecture
- Component refactor: removed monoliths (`Calendar.vue`, `CalendarGrid.vue`); expanded granular view + header/control components.
- Dialog system introduced (`BaseDialog`, `SettingsDialog`).

State & Data
- Store redesigned: Map-based events + recurrence map; mutation counters.
- Local persistence + undo/redo history (custom plugins).

Date & Holidays
- Migrated all date logic to `date-fns` (+ tz).
- Added national holiday support (toggle + loading utilities).

Recurrence & Events
- Consolidated recurrence handling; fixes for monthly edge days (29–31), annual, multi‑day, and complex weekly repeats.
- Reliable splitting/moving/resizing/deletion of repeating and multi‑day events.

Interaction & UX
- Double‑tap to create events; improved drag (multi‑day + position retention).
- Scroll & inertial/momentum navigation; year change via numeric scroller.
- Movable event dialog; live settings application.

Performance
- Progressive / virtual week rendering, reduced off‑screen buffer.
- Targeted repaint strategy; minimized full re-renders.

Plugins Added
- History, undo normalization, persistence, scroll manager, virtual weeks.

Styling & Layout
- Responsive + compact layout refinements; header restructured.
- Simplified visual elements (removed dots/overflow text); holiday styling adjustments.

Reliability / Fixes
- Numerous recurrence, deletion, orientation/rotation, and event indexing corrections.
- Cross-browser fallback (Firefox week info).

Dependencies Added
- date-fns, date-fns-tz, date-holidays, pinia-plugin-persistedstate.

Net Change
- 28 files modified; ~4.4K insertions / ~2.2K deletions (major refactor + feature set).
2025-08-26 03:58:24 +00:00
LeoVasanko 86a06acccb vue (#1)
Port to Vue. Also implements plenty of new functionality.
2025-08-22 21:34:33 +00:00