feat(settings): allow week to start on any day (#3) #41

Merged
makiolaj merged 1 commits from feat/week-start-any-day into release/v2.11.0 2026-06-27 12:47:46 +00:00
Owner

Implements Codeberg issue #3 — extend "Week starts on" to any weekday.

WeekStartPref becomes a sealed type (Auto + Day(DayOfWeek)); the picker lists "Automatic" plus all seven localised weekday names. Legacy MONDAY/SUNDAY values migrate transparently; garbage falls back to Auto.

On-device verification checklist

  • Settings → Appearance → Week starts on lists Automatic + all 7 days
  • Picking Saturday makes Week and Month views begin columns on Saturday
  • Month weekday header row reorders to match
  • The month/agenda widget weekday header reflects the choice
  • Automatic still follows device locale (Mon in DE, Sun in en-US)
  • Existing install with Monday/Sunday set keeps that day after update (migration)

Closes #3 (Codeberg). CI runs here; nothing released until release/v2.11.0 merges to main.

Implements Codeberg issue #3 — extend "Week starts on" to any weekday. `WeekStartPref` becomes a sealed type (`Auto` + `Day(DayOfWeek)`); the picker lists "Automatic" plus all seven localised weekday names. Legacy MONDAY/SUNDAY values migrate transparently; garbage falls back to Auto. **On-device verification checklist** - [x] Settings → Appearance → **Week starts on** lists Automatic + all 7 days - [x] Picking **Saturday** makes Week and Month views begin columns on Saturday - [x] Month weekday header row reorders to match - [x] The month/agenda widget weekday header reflects the choice - [x] **Automatic** still follows device locale (Mon in DE, Sun in en-US) - [x] Existing install with Monday/Sunday set keeps that day after update (migration) Closes #3 (Codeberg). CI runs here; nothing released until release/v2.11.0 merges to main.
makiolaj added 1 commit 2026-06-27 12:35:38 +00:00
feat(settings): allow week to start on any day
All checks were successful
Translations / check (pull_request) Successful in 5s
CI / ci (pull_request) Successful in 6m7s
47e8036000
Replace the AUTO/MONDAY/SUNDAY week-start enum with a sealed type
(Auto + Day(DayOfWeek)) so users can pick any of the seven days as the
first day of the week. The picker now lists "Automatic" plus all seven
localised weekday names; labels come from java.time display names rather
than per-day string resources.

Stored values round-trip by DayOfWeek.name, so the legacy MONDAY/SUNDAY
preferences migrate transparently. Garbage values fall back to Auto.

Closes #3 (Codeberg)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
makiolaj merged commit 585cdac4ab into release/v2.11.0 2026-06-27 12:47:46 +00:00
makiolaj deleted branch feat/week-start-any-day 2026-06-27 12:47:46 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: makiolaj/calendula#41