Introduce a second, heavier visibility level above the per-view hide
filter. A disabled calendar is removed from the app's surfaces entirely —
its events drop out of all views and search, and it disappears from the
drawer filter list, the event-form calendar picker and the import target
picker. It stays listed only in Settings → Calendars, where a per-row
switch toggles it, so it can always be brought back.
- CalendarPrefs: disabledCalendarIds set + setter, mirroring the hidden
set (DataStore comma-separated string); never touches the system
VISIBLE/SYNC_EVENTS flags, so it's app-local and reversible.
- CalendarRepositoryImpl: instances()/searchEvents() exclude
calendarId ∈ (hidden ∪ disabled). distinctUntilChanged() on instances
collapses the transient duplicate emission both DataStore-derived sets
produce when either is toggled.
- FilterViewModel: drop disabled calendars from the drawer filter list.
- EventEditViewModel: exclude disabled from writableCalendars; a
last-used preselect on a now-disabled calendar falls back to the first
remaining writable one.
- ImportViewModel: exclude disabled from the import target list.
- CalendarsScreen/ViewModel: per-row enable/disable Switch on both the
local and synced groups; disabled rows render dimmed (new GroupedRow
`dimmed` flag) while keeping the toggle live.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Update roadmap to reflect v2.8.0 releases (attendee editing, full-text
search, QS tile, now-line, contact pickers) and the week-numbers-in-month
rejection; capture the in-app 'disable a calendar' feature plan.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Swap the Buy-me-a-coffee pill for Ko-fi's beige support badge, matched
to the F-Droid badge height (56).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The solid Ko-fi pill read heavier than the F-Droid badge at equal
height; drop it to 46 so the two feel balanced.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Both at height 56 on one line — equal heights align on the baseline,
so no table/border workaround is needed.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The table centered them but Gitea draws cell borders we can't strip.
Stack the two badges on separate centered lines instead — no borders,
each keeps its own size.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Wrap both badges in a table row so the different-height buttons
align on a shared midline instead of the text baseline.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Use Ko-fi's raster PNG button (the SVG was ignored and rendered
oversized) and match both buttons to height 56 so they sit inline.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the small shields Ko-fi badge with Ko-fi's official
"Support me" button, placed beside the Get it on F-Droid badge
as a peer call-to-action.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Move the Building section into docs/BUILDING.md and collapse Building,
Architecture, and Roadmap into a compact Documentation block linking to
the dedicated docs, keeping the README focused on what/install/support.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Move support to the top: Ko-fi badge in the header badge row,
drop the redundant bottom Support section
- Add "Get it on F-Droid" button now that Calendula is on the
official repo
- Restructure Install: lead with official F-Droid, keep the
self-hosted repo as the faster-updates lane
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add an optional way for users to support development:
- About card: tonal "Support development" button opening ko-fi.com
via ACTION_VIEW (no INTERNET permission), EN + DE strings
- F-Droid metadata: Donate field in self-hosted and official drafts
- README: short Support section with the Ko-fi link
No perks/rewards attached — kept as a plain donation link.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>