From c70412c782d502a84147249f50a13c90778d460e Mon Sep 17 00:00:00 2001 From: Jean-Luc Makiola Date: Tue, 28 Jul 2026 17:10:52 +0000 Subject: [PATCH] Link the privacy policy from the about card (!103) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds a fourth link to the about card in settings, next to source and licence. Play requires the privacy policy to be reachable from inside the app, not just from the store listing, for anything that touches calendar or contact data. Points at jeanlucmakiola.de/calendula/privacy. Only the base string is added — Weblate owns the translations. Reviewed-on: https://gitea.jeanlucmakiola.de/makiolaj/calendula/pulls/103 --- .../calendula/ui/settings/SettingsScreen.kt | 10 +++++++++- app/src/main/res/values/strings.xml | 2 ++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/de/jeanlucmakiola/calendula/ui/settings/SettingsScreen.kt b/app/src/main/java/de/jeanlucmakiola/calendula/ui/settings/SettingsScreen.kt index c490375..c1efe32 100644 --- a/app/src/main/java/de/jeanlucmakiola/calendula/ui/settings/SettingsScreen.kt +++ b/app/src/main/java/de/jeanlucmakiola/calendula/ui/settings/SettingsScreen.kt @@ -56,6 +56,7 @@ import androidx.compose.material.icons.filled.Keyboard import androidx.compose.material.icons.filled.Language import androidx.compose.material.icons.filled.Notifications import androidx.compose.material.icons.filled.Palette +import androidx.compose.material.icons.filled.PrivacyTip import androidx.compose.material.icons.filled.Translate import androidx.compose.material.icons.filled.Tune import androidx.compose.material.icons.filled.UploadFile @@ -408,7 +409,9 @@ private fun LanguageRow(position: Position) { @Composable private fun AboutCard() { // The card layout lives in floret-kit (components.AboutCard); Calendula - // supplies its own logo, author and the source / licence / support links. + // supplies its own logo, author and the source / licence / privacy / support + // links. The privacy policy has to be reachable from inside the app, not just + // from the store listing, because Calendula touches calendar and contact data. AboutCard( logo = { AppLogo() }, appName = stringResource(R.string.app_name), @@ -424,6 +427,11 @@ private fun AboutCard() { label = stringResource(R.string.settings_license), url = stringResource(R.string.about_license_url), ), + AboutLink( + icon = Icons.Default.PrivacyTip, + label = stringResource(R.string.settings_about_privacy), + url = stringResource(R.string.about_privacy_url), + ), ), highlightLink = AboutLink( icon = Icons.Default.Favorite, diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ef9bfce..99407b9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -462,6 +462,7 @@ MIT by Jean-Luc Makiola Source + Privacy policy Support development Version %1$s Calendula app icon @@ -572,6 +573,7 @@ https://gitea.jeanlucmakiola.de/makiolaj/calendula https://gitea.jeanlucmakiola.de/makiolaj/calendula/src/branch/main/LICENSE + https://jeanlucmakiola.de/calendula/privacy https://ko-fi.com/jeanlucmakiola https://weblate.dev.jeanlucmakiola.de/engage/calendula/