diff --git a/app/src/main/java/de/jeanlucmakiola/calendula/ui/month/MonthScreen.kt b/app/src/main/java/de/jeanlucmakiola/calendula/ui/month/MonthScreen.kt index 9eab737..a4dc918 100644 --- a/app/src/main/java/de/jeanlucmakiola/calendula/ui/month/MonthScreen.kt +++ b/app/src/main/java/de/jeanlucmakiola/calendula/ui/month/MonthScreen.kt @@ -205,6 +205,7 @@ import java.time.format.TextStyle as JavaTextStyle import java.util.Locale import kotlinx.datetime.toJavaMonth import kotlinx.datetime.yearMonth +import java.time.temporal.WeekFields private val LocalTodayPulse = staticCompositionLocalOf { 0 } @@ -2701,13 +2702,14 @@ private fun monthChipDragModifier( /** * Left-gutter calendar-week cell (#25): a full-height tonal pill mirroring the * day cells' geometry, set apart by the secondaryContainer tint (matching the - * Week view's badge), with the ISO week number centred like a day number. The - * number comes from the row's Thursday, as in the Week view, so it is right for - * any first weekday (#493). + * Week view's badge), with the week number centred like a day number. It is + * numbered the locale's way from the row's mid-week day, as in the Week view, + * so it is right for any first weekday (#493). */ @Composable private fun WeekNumberGutter(weekStart: LocalDate, modifier: Modifier = Modifier) { - val weekNumber = remember(weekStart) { weekStart.toJavaLocalDate().rowWeekNumber() } + val locale = currentLocale() + val weekNumber = remember(weekStart, locale) { weekStart.toJavaLocalDate().rowWeekNumber(WeekFields.of(locale)) } val label = stringResource(R.string.week_number_label) val openLabel = stringResource(R.string.month_open_week, weekNumber) val onOpenWeek = LocalOpenWeek.current diff --git a/app/src/main/java/de/jeanlucmakiola/calendula/ui/week/WeekScreen.kt b/app/src/main/java/de/jeanlucmakiola/calendula/ui/week/WeekScreen.kt index 6c2b82d..6a2cc62 100644 --- a/app/src/main/java/de/jeanlucmakiola/calendula/ui/week/WeekScreen.kt +++ b/app/src/main/java/de/jeanlucmakiola/calendula/ui/week/WeekScreen.kt @@ -221,6 +221,7 @@ import kotlinx.datetime.toLocalDateTime import java.time.format.TextStyle as JavaTextStyle import java.util.Locale import kotlinx.datetime.yearMonth +import java.time.temporal.WeekFields /** One lane of the all-day strip, sized to a trimmed bar line (#190). */ private val ALL_DAY_ROW_HEIGHT = 20.dp @@ -1137,7 +1138,8 @@ private fun WeekDayHeader( */ @Composable private fun WeekNumberCell(weekStart: LocalDate, showBadge: Boolean, modifier: Modifier = Modifier) { - val weekNumber = remember(weekStart) { weekStart.toJavaLocalDate().rowWeekNumber() } + val locale = currentLocale() + val weekNumber = remember(weekStart, locale) { weekStart.toJavaLocalDate().rowWeekNumber(WeekFields.of(locale)) } Column( modifier = modifier .fillMaxWidth() diff --git a/floret-kit b/floret-kit index 968d630..003eca3 160000 --- a/floret-kit +++ b/floret-kit @@ -1 +1 @@ -Subproject commit 968d63034f0c78450dc04927c47d84aadbb3479e +Subproject commit 003eca337a124cf52e236479eafe5cd98465aa4c