From 3bad2b50187f55463588a2d4e74fa9df4beb35b8 Mon Sep 17 00:00:00 2001 From: Christophe Besson Date: Sat, 10 Oct 2026 14:52:57 +0200 Subject: feat(android): back the calendars up as an iCalendar file A Calendar section sends every calendar the person can edit, as a dated .ics, into /-calendar once a day when it changed. Co-Authored-By: Claude Opus 5.5 --- .../app/src/main/AndroidManifest.xml | 2 + .../app/src/main/assets/bridge/meshbay-bridge.js | 12 ++ .../main/kotlin/org/meshbay/client/MainActivity.kt | 4 + .../org/meshbay/client/phonesync/CalendarSource.kt | 89 +++++++++++ .../kotlin/org/meshbay/client/phonesync/Ics.kt | 176 +++++++++++++++++++++ .../src/test/kotlin/org/meshbay/client/IcsTest.kt | 117 ++++++++++++++ packages/meshbay-hub/src/meshbay_hub/static/app.js | 7 +- .../src/meshbay_hub/static/locales/de.js | 3 + .../src/meshbay_hub/static/locales/en.js | 3 + .../src/meshbay_hub/static/locales/es.js | 3 + .../src/meshbay_hub/static/locales/fr.js | 3 + .../src/meshbay_hub/static/locales/it.js | 3 + .../src/meshbay_hub/static/locales/ja.js | 3 + .../src/meshbay_hub/static/locales/nl.js | 3 + .../src/meshbay_hub/static/locales/pl.js | 3 + .../src/meshbay_hub/static/locales/pt-BR.js | 3 + .../src/meshbay_hub/static/locales/zh-CN.js | 3 + .../src/meshbay_hub/static/phone-sync-settings.js | 10 +- .../src/meshbay_hub/static/phone-sync.js | 10 +- .../meshbay-hub/src/meshbay_hub/static/platform.js | 3 +- .../meshbay-hub/tests/harness/photo_sync_probe.py | 9 ++ packages/meshbay-hub/tests/test_android_shell.py | 4 +- packages/meshbay-hub/tests/test_photo_sync_ui.py | 6 +- 23 files changed, 465 insertions(+), 14 deletions(-) create mode 100644 packages/meshbay-android/app/src/main/kotlin/org/meshbay/client/phonesync/CalendarSource.kt create mode 100644 packages/meshbay-android/app/src/main/kotlin/org/meshbay/client/phonesync/Ics.kt create mode 100644 packages/meshbay-android/app/src/test/kotlin/org/meshbay/client/IcsTest.kt (limited to 'packages') diff --git a/packages/meshbay-android/app/src/main/AndroidManifest.xml b/packages/meshbay-android/app/src/main/AndroidManifest.xml index 48a69ea..f52c06f 100644 --- a/packages/meshbay-android/app/src/main/AndroidManifest.xml +++ b/packages/meshbay-android/app/src/main/AndroidManifest.xml @@ -23,6 +23,8 @@ + +