From 1c151aa24371560248e2b1426171bda396474718 Mon Sep 17 00:00:00 2001 From: florentinposch Date: Mon, 4 May 2026 14:36:55 +0200 Subject: [PATCH] fix: observation type + notification filter localization --- .../activities/dashboard/filter/DashboardFilterView.kt | 4 +++- .../dashboard/schedule/list/ScheduleListItem.kt | 3 ++- .../notification/filter/NotificationFilterView.kt | 3 ++- .../app/android/extensions/ResourceMappingExtension.kt | 10 ++++++++++ .../more/app/android/extensions/StringExtension.kt | 3 +++ androidApp/src/main/res/values-de/filter-strings.xml | 3 --- .../main/res/values-de/notification-view-strings.xml | 7 ------- androidApp/src/main/res/values/filter-strings.xml | 3 --- .../src/main/res/values/notification-view-strings.xml | 7 ------- 9 files changed, 20 insertions(+), 23 deletions(-) diff --git a/androidApp/src/main/java/io/redlink/more/app/android/activities/dashboard/filter/DashboardFilterView.kt b/androidApp/src/main/java/io/redlink/more/app/android/activities/dashboard/filter/DashboardFilterView.kt index 33a1765d7..a3b73a293 100644 --- a/androidApp/src/main/java/io/redlink/more/app/android/activities/dashboard/filter/DashboardFilterView.kt +++ b/androidApp/src/main/java/io/redlink/more/app/android/activities/dashboard/filter/DashboardFilterView.kt @@ -30,6 +30,8 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp import io.redlink.more.app.android.R import io.redlink.more.app.android.extensions.getStringResource +import io.redlink.more.app.android.extensions.getStringResourceByName +import io.redlink.more.app.android.extensions.observationTypeToResource import io.redlink.more.app.android.extensions.stringResource import io.redlink.more.app.android.shared_composables.HeaderDescription import io.redlink.more.app.android.shared_composables.HeaderTitle @@ -140,7 +142,7 @@ fun DashboardFilterView(coreScheduleViewModel: CoreScheduleViewModel) { .padding(4.dp) ) { HeaderDescription( - description = item.key, + description = getStringResourceByName(item.key.observationTypeToResource()), color = if (item.value) MoreColors.Primary else MoreColors.Secondary ) } diff --git a/androidApp/src/main/java/io/redlink/more/app/android/activities/dashboard/schedule/list/ScheduleListItem.kt b/androidApp/src/main/java/io/redlink/more/app/android/activities/dashboard/schedule/list/ScheduleListItem.kt index 8e759b0ed..731680ab9 100644 --- a/androidApp/src/main/java/io/redlink/more/app/android/activities/dashboard/schedule/list/ScheduleListItem.kt +++ b/androidApp/src/main/java/io/redlink/more/app/android/activities/dashboard/schedule/list/ScheduleListItem.kt @@ -35,6 +35,7 @@ import io.redlink.more.app.android.activities.tasks.ObservationActionButton import io.redlink.more.app.android.extensions.getStringResource import io.redlink.more.app.android.extensions.getStringResourceByName import io.redlink.more.app.android.extensions.jvmLocalDateTime +import io.redlink.more.app.android.extensions.observationTypeToResource import io.redlink.more.app.android.shared_composables.BasicText import io.redlink.more.app.android.shared_composables.SmallTitle import io.redlink.more.app.android.shared_composables.TimeframeHours @@ -82,7 +83,7 @@ fun ScheduleListItem( modifier = Modifier.fillMaxWidth() ) { BasicText( - text = getStringResourceByName(scheduleModel().observationType.replace("-", "_")), + text = getStringResourceByName(scheduleModel().observationType.observationTypeToResource()), color = MoreColors.Secondary ) Row(horizontalArrangement = Arrangement.End) { diff --git a/androidApp/src/main/java/io/redlink/more/app/android/activities/notification/filter/NotificationFilterView.kt b/androidApp/src/main/java/io/redlink/more/app/android/activities/notification/filter/NotificationFilterView.kt index 0ff90d2b7..92a7762ea 100644 --- a/androidApp/src/main/java/io/redlink/more/app/android/activities/notification/filter/NotificationFilterView.kt +++ b/androidApp/src/main/java/io/redlink/more/app/android/activities/notification/filter/NotificationFilterView.kt @@ -28,6 +28,7 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp import io.redlink.more.app.android.R +import io.redlink.more.app.android.extensions.formatNotificationFilterString import io.redlink.more.app.android.extensions.getStringResource import io.redlink.more.app.android.extensions.stringResource import io.redlink.more.app.android.shared_composables.HeaderDescription @@ -70,7 +71,7 @@ fun NotificationFilterView(coreViewModel: CoreNotificationFilterViewModel) { .padding(4.dp) ) { HeaderDescription( - description = entry.key.type, + description = entry.key.toString().formatNotificationFilterString(), color = MoreColors.Secondary ) } diff --git a/androidApp/src/main/java/io/redlink/more/app/android/extensions/ResourceMappingExtension.kt b/androidApp/src/main/java/io/redlink/more/app/android/extensions/ResourceMappingExtension.kt index f43b84c54..2a7636977 100644 --- a/androidApp/src/main/java/io/redlink/more/app/android/extensions/ResourceMappingExtension.kt +++ b/androidApp/src/main/java/io/redlink/more/app/android/extensions/ResourceMappingExtension.kt @@ -10,8 +10,10 @@ */ package io.redlink.more.app.android.extensions +import io.redlink.more.SharedRes import io.redlink.more.app.android.R import io.redlink.more.models.DateFilterModel +import io.redlink.more.models.NotificationFilterTypeModel fun String.formatDateFilterString(): String { return when (this) { @@ -22,3 +24,11 @@ fun String.formatDateFilterString(): String { } } + +fun String.formatNotificationFilterString(): String { + return when (this) { + NotificationFilterTypeModel.UNREAD.toString() -> sharedResource(SharedRes.strings.more_filter_notification_unread) + NotificationFilterTypeModel.IMPORTANT.toString() -> sharedResource(SharedRes.strings.more_filter_notification_important) + else -> sharedResource(SharedRes.strings.more_filter_notification_all) + } +} diff --git a/androidApp/src/main/java/io/redlink/more/app/android/extensions/StringExtension.kt b/androidApp/src/main/java/io/redlink/more/app/android/extensions/StringExtension.kt index 12a6d87f8..3f12fdb5c 100644 --- a/androidApp/src/main/java/io/redlink/more/app/android/extensions/StringExtension.kt +++ b/androidApp/src/main/java/io/redlink/more/app/android/extensions/StringExtension.kt @@ -40,3 +40,6 @@ fun String.toAnnotatedString(): AnnotatedString { return builder.toAnnotatedString() } + +// app-usage -> app_usage +fun String.observationTypeToResource(): String = this.replace("-", "_") diff --git a/androidApp/src/main/res/values-de/filter-strings.xml b/androidApp/src/main/res/values-de/filter-strings.xml index a6cc9ce15..75e9b931a 100644 --- a/androidApp/src/main/res/values-de/filter-strings.xml +++ b/androidApp/src/main/res/values-de/filter-strings.xml @@ -22,8 +22,5 @@ Typ auswählen Filter auswählen - Alle Nachrichten - Nicht gelesene Nachrichten anzeigen - Wichtige Nachrichten anzeigen \ No newline at end of file diff --git a/androidApp/src/main/res/values-de/notification-view-strings.xml b/androidApp/src/main/res/values-de/notification-view-strings.xml index ddf1579a3..d0f8fdc5e 100644 --- a/androidApp/src/main/res/values-de/notification-view-strings.xml +++ b/androidApp/src/main/res/values-de/notification-view-strings.xml @@ -1,14 +1,7 @@ Es gibt keine Nachrichten - - Nachrichten - Gelesene Nachrichten - Ungelesene Nachrichten - Ungelesene Nachrichten anzeigen - Alle Nachrichten More Logo - Nchrichten Die Nachrichtenliste ist derzeit leer! \ No newline at end of file diff --git a/androidApp/src/main/res/values/filter-strings.xml b/androidApp/src/main/res/values/filter-strings.xml index a3081eb9b..d12d92ca9 100644 --- a/androidApp/src/main/res/values/filter-strings.xml +++ b/androidApp/src/main/res/values/filter-strings.xml @@ -22,8 +22,5 @@ Select Type Select Filter - All Notifications - Unread - Important \ No newline at end of file diff --git a/androidApp/src/main/res/values/notification-view-strings.xml b/androidApp/src/main/res/values/notification-view-strings.xml index 4dee22c58..c2e262cba 100644 --- a/androidApp/src/main/res/values/notification-view-strings.xml +++ b/androidApp/src/main/res/values/notification-view-strings.xml @@ -1,14 +1,7 @@ No notifications to show - - Notifications - Read Notifications - Unread Notification - Show only unread notifications - All Notifications More Logo - Notification The notification list is currently empty! \ No newline at end of file