feat(pickers): point at the calendar manager when one is missing (#76)

The event form's and the .ics import screen's calendar pickers list event
targets only, so a calendar that is switched off, read-only or managed is
simply absent — which reads as a missing calendar rather than an excluded
one. Both pickers now end in a "Missing a calendar?" row that names the
possible reasons and opens Settings → Calendars, where the row labels added
in the previous commit say which one applies.

Keeping the excluded calendars out of the picker stays deliberate: with a
handful of read-only subscriptions they would crowd out the calendars you
can actually pick, every single time you choose one.

The manager overlay moves to the end of the host's overlay stack so it
covers every surface that can now open it — Settings as before, plus both
event forms and the import picker. Coming back leaves the caller standing
exactly as it was, with its calendar list already refreshed: switching a
calendar on writes VISIBLE, the provider notifies, the flow re-queries.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-25 22:25:01 +02:00
parent d16c21f15a
commit 5b64110be6
5 changed files with 80 additions and 14 deletions

View File

@@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
### Added
- Settings → Calendars now says what is different about a calendar instead of
leaving you to guess. Ones you can only view — a subscribed calendar, a
calendar shared with you read-only — are marked **Read-only**. Ones whose
account isn't syncing events to this device are marked **Not synced**, moved
to the bottom of their account and left without a switch: none of their events
are on the device, so switching one on could not show you anything ([#76]).
- The calendar picker in the event form and in the .ics import screen now ends
with a **"Missing a calendar?"** row that opens Settings → Calendars, where
those marks then explain why a calendar isn't offered ([#76]).
### Fixed
- Reminders now arrive for every calendar you have switched on. A calendar that
was hidden at system level — switched off in another calendar app, or never
@@ -1135,3 +1146,4 @@ automatically, with zero telemetry and no internet permission.
[#44]: https://codeberg.org/jlmakiola/calendula/issues/44
[#70]: https://codeberg.org/jlmakiola/calendula/issues/70
[#75]: https://codeberg.org/jlmakiola/calendula/issues/75
[#76]: https://codeberg.org/jlmakiola/calendula/issues/76