Commit Graph
15 Commits
Author SHA1 Message Date
LeoVasanko e4245fc193 Move calendarweeks etc. in DOM after the month name bar, to make them render on top of it and not under. 2025-09-25 22:17:22 +00:00
LeoVasanko 37fb4f2fc6 Scroll the week to view the second row visible (showing also the previous week) rather than centered, for better UX. 2025-09-25 20:35:46 +00:00
LeoVasanko dc4d496c63 Prefer rem, assure that dialogs scale correctly. 2025-09-25 20:21:26 +00:00
LeoVasanko b135b53893 Optimise blur. 2025-09-25 19:36:42 +00:00
LeoVasanko e9e4147fdd Remove the 14 day selection limit for creating or modifying events. 2025-09-25 04:09:50 +00:00
LeoVasanko 8b89327442 Implement highlight effect on the day navigated to. 2025-09-25 03:48:25 +00:00
LeoVasanko 97c7635897 Motion blur while scrolling. 2025-09-25 01:55:43 +00:00
LeoVasanko d5b6054fdd Improved scrolling on month bar (fast drag scroll, per-month wheel scroll, glitches eliminated). 2025-09-25 01:34:30 +00:00
LeoVasanko 094bfc5a9c Styling details, removed absolute positioning of each weekrow and month label in favor of a wrapper that uses block layout inside it. Gaps/borders removed on the calendar. 2025-09-24 06:15:00 +00:00
LeoVasanko 456905d699 Much simpler undo/redo handling, bugs fixed and less code. 2025-08-28 01:54:10 +00:00
LeoVasanko 825e3e2b73 Implement event/date search bar 2025-08-27 23:15:27 +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