Commit Graph
836 Commits
Author SHA1 Message Date
makiolaj d7315caa20 Page the month view with a pager that follows the finger (#336)
Paged and Split now page like the week and day views; Split keeps its
vertical expand drag, now vertical-only beside the pager, and the pane
follows the grid's row count mid-swipe. The old trigger swipe and slide
transition are gone with their last callers.

Closes #336
2026-09-30 12:44:22 +02:00
Weblate bfdbd49aa1 Update translation files
Updated by "Remove blank strings" add-on in Weblate.

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/
2026-09-30 06:10:49 +00:00
N Donkersloot 844a3c22ff Added translation using Weblate (Dutch) 2026-09-30 06:10:49 +00:00
Sup99999 87a08a4d24 Translated using Weblate (Arabic)
Currently translated at 100.0% (633 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-30 06:10:48 +00:00
Sup99999 dc0637c37c Translated using Weblate (Arabic)
Currently translated at 100.0% (633 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-29 18:29:12 +00:00
Weblate 381eca6660 Translated using Weblate (Czech)
Currently translated at 100.0% (633 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/cs/
2026-09-29 07:07:16 +00:00
James Trivette 36018b3e52 Translated using Weblate (Czech)
Currently translated at 100.0% (633 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/cs/
2026-09-29 07:07:16 +00:00
Paulo Gomez 3c0324c071 Translated using Weblate (Portuguese (Brazil))
Currently translated at 90.2% (571 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/pt_BR/
2026-09-29 07:07:15 +00:00
Dmitri Gabinski a70108dff8 Translated using Weblate (Belarusian)
Currently translated at 89.7% (568 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/be/
2026-09-28 16:31:37 +00:00
makiolaj 83447ab68a Translated using Weblate (German)
Currently translated at 99.6% (631 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/de/
2026-09-28 16:31:36 +00:00
makiolaj 62ea5ce9d3 Share one top bar across views and smooth the view switches (#184) 2026-09-27 21:12:22 +02:00
makiolaj 254fafe42b Document how the views switch (#184) 2026-09-27 19:31:59 +02:00
makiolaj f9dd7a22b7 Hold the top bar and FAB still across view switches (#184) 2026-09-27 19:28:10 +02:00
makiolaj 7d7d16ca31 Resize timeline columns in place when switching views (#184) 2026-09-27 19:26:24 +02:00
makiolaj 6ed0b30230 Lay timeline columns out through one geometry (#184) 2026-09-27 19:22:09 +02:00
makiolaj 8d3d28c240 Share one focused date across views (#184) 2026-09-27 19:18:13 +02:00
makiolaj f9738b0c23 Put the day view on the paged timeline (#184) 2026-09-27 19:13:47 +02:00
makiolaj 39ca7d869a Carry the timeline hours between views (#184) 2026-09-27 19:10:49 +02:00
makiolaj 0c36ed2a75 Spring the view back even though the gesture job is cancelled (#185) 2026-09-27 12:11:15 +02:00
makiolaj e84378cc5b Preview the previous view on a back gesture (#185) 2026-09-27 12:11:15 +02:00
makiolaj 57dcda5b54 Spring overlays back after a cancelled back gesture (#184) 2026-09-27 12:11:10 +02:00
makiolaj df33eca5f2 Reset the back preview when an overlay reopens (#184) 2026-09-27 12:06:45 +02:00
makiolaj dc841a91e0 Remember the view morph scope across recompositions (#184) 2026-09-27 12:01:41 +02:00
makiolaj f7805cb0b5 Morph events between views instead of fading (#184) 2026-09-27 11:21:32 +02:00
makiolaj 33c61202d9 Add a multi-day view with a configurable day count (#193) 2026-09-25 21:25:17 +02:00
Jean-Luc Makiolaandmakiolaj 9f05a53ed2 Page the day view with a pager that follows the finger (#336) (#337)
Moves the day view onto the same pager as the week view (#131): days follow the finger and snap past half a page or on a fling, the hour gutter stays fixed, neighbouring days are loaded ahead. Opening a day from the month grid lands on that date directly.

Also, from review:
- The per-page state cache (week and day) leaked: dropped entries kept their `stateIn` coroutine and last loaded events alive until the ViewModel was cleared. It is now a shared `PageStateCache` in `common/` that gives each entry its own job and cancels it on eviction.
- The week and day anchor `state` chains had lost their `.catch`, so a settings-flow error crashed instead of showing the failure screen.

Part of #336; the month view follows in its own PR.

Co-authored-by: Jean-Luc Makiola <business@jeanlucmakiola.de>
Reviewed-on: https://codeberg.org/jlmakiola/calendula/pulls/337
2026-09-25 20:49:25 +02:00
Sup99999 4ac937c54f Translated using Weblate (Arabic)
Currently translated at 99.8% (632 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 18:12:14 +00:00
makiolaj a2b6793406 Page the month view with a pager that follows the finger (#336)
Paged and Split now page like the week and day views; Split keeps its
vertical expand drag, now vertical-only beside the pager, and the pane
follows the grid's row count mid-swipe. The old trigger swipe and slide
transition are gone with their last callers.

Closes #336
2026-09-25 14:40:04 +02:00
makiolaj eda616b42e Cancel dropped page states and restore the failure catch (#336)
Evicted week and day states kept their sharing coroutine, and their last
loaded events, alive until the view was closed; each now shares on its
own job, cancelled when it is let go.
2026-09-25 14:35:50 +02:00
makiolaj 7c17bf2ff4 Page the day view with a pager that follows the finger (#336)
Same model as the week view: days slide with the finger and snap past half
a page or on a fling, the hour gutter stays put, and the neighbouring days
are loaded ahead. The strip-height blend moves to common so both views
share it.
2026-09-25 13:41:28 +02:00
Jean-Luc Makiola 9ca10fc6ee Page the week view with a pager that follows the finger (#131)
Closes #131
2026-09-25 13:28:03 +02:00
Sup99999 b5f28929d7 Translated using Weblate (Arabic)
Currently translated at 99.8% (632 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 02:08:49 +00:00
Weblate d729a928ea Translated using Weblate (Arabic)
Currently translated at 99.8% (632 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 01:03:55 +00:00
Sup99999 01a4ad742b Translated using Weblate (Arabic)
Currently translated at 99.8% (632 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 01:03:55 +00:00
Weblate 6f77a5e12e Translated using Weblate (Arabic)
Currently translated at 97.4% (617 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 00:31:23 +00:00
Sup99999 e29c38d88c Translated using Weblate (Arabic)
Currently translated at 97.4% (617 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 00:31:23 +00:00
Weblate 04f509fc4c Translated using Weblate (Arabic)
Currently translated at 96.8% (613 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 00:24:30 +00:00
Sup99999 b6061f1384 Translated using Weblate (Arabic)
Currently translated at 96.8% (613 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 00:24:30 +00:00
Weblate 38c3a82b54 Translated using Weblate (Arabic)
Currently translated at 96.3% (610 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 00:13:36 +00:00
Sup99999 d3f1409503 Translated using Weblate (Arabic)
Currently translated at 96.3% (610 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-25 00:13:36 +00:00
Sup99999 3475a073ad Translated using Weblate (Arabic)
Currently translated at 94.9% (601 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-24 23:59:17 +00:00
Sup99999 643c61db65 Translated using Weblate (Arabic)
Currently translated at 94.7% (600 of 633 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/ar/
2026-09-24 23:55:39 +00:00
James Trivette 1734b7863c Translated using Weblate (Czech)
Currently translated at 100.0% (590 of 590 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/cs/
2026-09-24 19:35:26 +00:00
Louis Leblanc d45d4f443b Translated using Weblate (French)
Currently translated at 100.0% (590 of 590 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/fr/
2026-09-24 19:35:26 +00:00
Jean-Luc Makiolaandmakiolaj 994fa010b8 Release v2.21.0 (#332)
Release — F-Droid repo + Gitea/Codeberg release + Play / detect (push) Successful in 32s
Release — F-Droid repo + Gitea/Codeberg release + Play / release (push) Successful in 14m32s
Release — F-Droid repo + Gitea/Codeberg release + Play / play (push) Successful in 1m33s
Minor release rounding up the 2.21.0 milestone.

- Setup makes sure there is a calendar to write to: it offers to create a local calendar or add a syncing account when the device has none, and lists switched-off calendars so they can be turned back on (#287).
- The month grid gives its days more room: smaller week numbers in a gutter measured from the widest number, less chip padding, tighter label tracking (#189, #190, #212, #213).
- A month day shows as many event chips as its week row has height for, instead of a flat three.
- Split view draws only the rows its month spans instead of padding to six (#162).
- Short events show their title in week and day view (#289).
- A fully zoomed-out timeline no longer scrolls by its rounding leftover (#290).
- Backup & restore has loading, failure and empty states instead of a blank page (#304).
- Untitled events and unnamed calendars use the translated placeholder instead of the hardcoded German one, which the calendar editor could also save into the calendar (#321, #329).

Plus the release commit: CHANGELOG section, versionName 2.21.0 / versionCode 22100, and the en-US 22100 changelog. Merging this to main triggers the release pipeline.

Closes #287
Closes #189
Closes #190
Closes #212
Closes #213
Closes #162
Closes #289
Closes #290
Closes #304
Closes #321
Closes #329

Co-authored-by: Jean-Luc Makiola <business@jeanlucmakiola.de>
Reviewed-on: https://codeberg.org/jlmakiola/calendula/pulls/332
v2.21.0
2026-09-24 15:51:06 +02:00
Jean-Luc Makiolaandmakiolaj 5c20c5f6eb Release v2.20.4 (#313)
Release — F-Droid repo + Gitea/Codeberg release + Play / detect (push) Successful in 7s
Release — F-Droid repo + Gitea/Codeberg release + Play / release (push) Successful in 13m14s
Release — F-Droid repo + Gitea/Codeberg release + Play / play (push) Successful in 1m26s
Patch release rounding up the three issues in the 2.20.4 milestone.

- An event opened from a reminder or a home-screen widget came back on every
  later launch — an error screen once that event had been deleted. Android
  hands back the intent that started the task each time the activity is
  rebuilt, and the event channels acted on it every time instead of once
  (#309).
- "Today" did nothing in the Agenda once you had scrolled ahead: the agenda is
  browsed by scrolling, not by moving its date, so resetting the date alone
  changed nothing. It now scrolls the list back, and the button stays offered
  while the list is scrolled away (#305).
- The self-hosted F-Droid repo filed the app under "Time" instead of
  "Calendar & Agenda" (#294).

Plus the release commit: CHANGELOG section, versionName 2.20.4 / versionCode
22004, and the en-US 22004 changelog. Merging this to main triggers the release
pipeline.

Closes #309
Closes #305
Closes #294

Co-authored-by: Jean-Luc Makiola <business@jeanlucmakiola.de>
Reviewed-on: https://codeberg.org/jlmakiola/calendula/pulls/313
v2.20.4
2026-09-20 21:16:11 +02:00
Jean-Luc Makiola c4bb7ae0b2 Translations update from Weblate (#300)
Release — F-Droid repo + Gitea/Codeberg release + Play / detect (push) Successful in 7s
Release — F-Droid repo + Gitea/Codeberg release + Play / release (push) Skipped
Release — F-Droid repo + Gitea/Codeberg release + Play / play (push) Skipped
Reviewed-on: https://codeberg.org/jlmakiola/calendula/pulls/300
2026-09-20 21:11:38 +02:00
Julie 0c985a280c Translated using Weblate (Slovak)
Currently translated at 42.3% (250 of 590 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/sk/
2026-09-17 08:36:18 +00:00
Weblate 17ebb9fd42 Translated using Weblate (Slovak)
Currently translated at 42.3% (250 of 590 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/sk/
2026-09-17 08:36:18 +00:00
James Trivette cadc2b14db Translated using Weblate (Czech)
Currently translated at 100.0% (590 of 590 strings)

Translation: Calendula/Strings
Translate-URL: https://weblate.dev.jeanlucmakiola.de/projects/calendula/strings/cs/
2026-09-15 17:38:23 +00:00