release: v2.12.0 — past-event display + week-view title wrap #51

Merged
makiolaj merged 8 commits from release/v2.12.0 into main 2026-06-28 20:43:49 +00:00
Owner

Release candidate for v2.12.0 (versionCode 21200).

Changes

  • Past-event display. A "Past events" setting (Show / Dim / Hide) governs events that already ended today, applied to both the in-app agenda and the "Upcoming" home-screen widget; a separate "Dim completed events" toggle fades finished events in the month and week views. Both off by default. Resolves https://codeberg.org/jlmakiola/calendula/issues/12 (thanks @ptab).
  • Readable titles on overlapping events. In the week/day views, titles on slim overlapping blocks now wrap to fill the block instead of clipping. https://codeberg.org/jlmakiola/calendula/issues/13 (thanks @ptab).

Release-cut status

  • versionName / versionCode already at 2.12.0 / 21200.
  • CHANGELOG.md [2.12.0] section and fastlane 21200.txt synced.

⚠️ Before merging

Merging to main triggers the release pipeline (tag + F-Droid publish). Per docs/RELEASING.md step 4, the mandatory gate is the releaseTest (R8) on-device verification (scripts/verify-release.sh): clean/permission-not-granted launch, grant + load, both widgets render, exercise the headline changes. Only the debug build has been reviewed on-device so far — the R8 release variant has not.

(Issue numbers above are Codeberg links — this Gitea repo's #12/#13 are unrelated.)

Release candidate for **v2.12.0** (versionCode 21200). ## Changes - **Past-event display.** A "Past events" setting (Show / Dim / Hide) governs events that already ended today, applied to both the in-app agenda and the "Upcoming" home-screen widget; a separate "Dim completed events" toggle fades finished events in the month and week views. Both off by default. Resolves https://codeberg.org/jlmakiola/calendula/issues/12 (thanks @ptab). - **Readable titles on overlapping events.** In the week/day views, titles on slim overlapping blocks now wrap to fill the block instead of clipping. https://codeberg.org/jlmakiola/calendula/issues/13 (thanks @ptab). ## Release-cut status - versionName / versionCode already at 2.12.0 / 21200. - CHANGELOG.md `[2.12.0]` section and fastlane `21200.txt` synced. ## ⚠️ Before merging Merging to `main` triggers the release pipeline (tag + F-Droid publish). Per docs/RELEASING.md step 4, the mandatory gate is the **releaseTest (R8) on-device verification** (`scripts/verify-release.sh`): clean/permission-not-granted launch, grant + load, both widgets render, exercise the headline changes. Only the **debug** build has been reviewed on-device so far — the R8 release variant has not. (Issue numbers above are Codeberg links — this Gitea repo's #12/#13 are unrelated.)
makiolaj added 8 commits 2026-06-28 20:34:37 +00:00
Adds two independent display settings under Settings › Appearance, both
defaulting to the current behaviour (off) so nothing changes until a user
opts in:

  • Agenda › "Past events" (Show / Dim / Hide) — events that already ended
    today can be left as-is, faded, or dropped from the list. Hiding also
    removes any day left empty, falling back to the empty state. Re-evaluated
    each minute so rows fade/fall away as they end while the screen is open.

  • Calendar › "Dim completed events" — a separate toggle that fades finished
    events in the month and week grids, kept independent of the agenda setting.

An event counts as completed once its end is at or before now (in-progress
events are never dimmed; all-day events only after their day is fully over),
via a shared EventInstance.hasEnded(now). The grids read the cut-off through
a new LocalDimCutoff CompositionLocal (mirroring LocalShowHourLines) so only
the event chips recompose on the per-minute tick, and only while dimming is on.

Also adds an "Agenda" section header so the agenda rows stand apart in the
now-busier Appearance screen, and documents the feature in the changelog.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Overlapping events split a day column into narrow lanes where the title
was clipped to one or two characters. Mirror Google Calendar: drop the
time label on overlapping (multi-lane) blocks and wrap the title across
as many lines as the block height allows, so the full title stays
readable without opening the event.

Closes #13
Bump versionName to 2.12.0 (versionCode 21200) and add the changelog.
Merging this into main triggers release.yaml, which builds, signs,
publishes and mints the v2.12.0 tag + Gitea release.

Closes #13
# Conflicts:
#	app/src/main/java/de/jeanlucmakiola/calendula/ui/week/WeekScreen.kt
The overlapping-title fix already shipped its F-Droid note in
fastlane/.../21200.txt but was never added to CHANGELOG.md, so the
release-cut sync (which regenerates the fastlane note from the changelog's
version section) would have dropped it. Add it under [Unreleased] › Changed
alongside the past-event display settings, and define the missing [#13] link.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Issue #12 asks for hiding finished events in the agenda view *and* its
home-screen widget. The in-app screen already honours the Past events
setting (Show / Dim / Hide); extend the same setting to the "Upcoming"
agenda widget.

The widget loads its events unfiltered and applies the mode reactively in
the composition against a captured "now" — mirroring how the range is read
from per-instance Glance state — so toggling the setting reflects on a live
widget without relying on provideGlance's data preamble re-running. Hiding
drops finished events and any day they empty; dimming fades the colour
stripe and lowers the title's emphasis (Glance has no generic alpha
modifier). setPastEventDisplay now pushes the mode into each widget's Glance
state and recomposes, like setAgendaWidgetRange.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
release: cut v2.12.0 changelog and fastlane notes
All checks were successful
Translations / check (pull_request) Successful in 5s
CI / ci (pull_request) Successful in 9m9s
e1f79df67a
Move the accumulated [Unreleased] section under [2.12.0] — 2026-06-28 and
regenerate fastlane/.../changelogs/21200.txt from it (scripts/
sync_changelog_to_fastlane.sh), so the official F-Droid listing and the
Gitea release notes both cover the release's two changes: the past-event
display settings (agenda screen + widget, month/week dimming) and the
overlapping-event title wrapping. versionName is already 2.12.0/21200.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
makiolaj scheduled this pull request to auto merge when all checks succeed 2026-06-28 20:35:11 +00:00
makiolaj merged commit fb2a40114a into main 2026-06-28 20:43:49 +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#51