From 61f21792d45d79a056001dbf3fc1d6f45605f484 Mon Sep 17 00:00:00 2001 From: Brandon McAnsh Date: Mon, 26 Oct 2026 20:04:06 -0400 Subject: [PATCH] fix(messenger): clear the two lint errors from the request sheets lintDebug fails on code/cash with two errors from #1851: - NonObservableLocale: the time-to-pay day grid read Locale.getDefault() in composition, so it would miss a locale change. It reads LocalLocale.current.platformLocale now. - RememberReturnType: the remember that attaches the request deck before it is read returned Unit. It returns the attached chat now; attach still runs once per chat, before the deck is read. --- .../flipcash/app/messenger/internal/request/TimeToPaySheet.kt | 3 ++- .../flipcash/app/messenger/internal/screens/MessengerScreen.kt | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/flipcash/features/messenger/src/main/kotlin/com/flipcash/app/messenger/internal/request/TimeToPaySheet.kt b/apps/flipcash/features/messenger/src/main/kotlin/com/flipcash/app/messenger/internal/request/TimeToPaySheet.kt index 42b2a5f2b4..524efda737 100644 --- a/apps/flipcash/features/messenger/src/main/kotlin/com/flipcash/app/messenger/internal/request/TimeToPaySheet.kt +++ b/apps/flipcash/features/messenger/src/main/kotlin/com/flipcash/app/messenger/internal/request/TimeToPaySheet.kt @@ -63,6 +63,7 @@ import androidx.compose.ui.graphics.drawscope.DrawScope import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Path import androidx.compose.ui.graphics.lerp +import androidx.compose.ui.platform.LocalLocale import androidx.compose.ui.res.pluralStringResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.semantics.LiveRegionMode @@ -315,7 +316,7 @@ private fun PresetChips(selected: Deadline.Preset?, reducedMotion: Boolean, onCh */ @Composable private fun DayGrid(sheet: TimeToPay, reducedMotion: Boolean, onChoose: (LocalDate) -> Unit) { - val locale = Locale.getDefault() + val locale = LocalLocale.current.platformLocale val days = remember(sheet.today) { TimeToPay.grid(sheet.today, WeekFields.of(locale).firstDayOfWeek) } val monthLabel = remember { DateTimeFormatter.ofPattern("MMM", locale) } val fullDate = remember { DateTimeFormatter.ofPattern(bestPattern("EEEEMMMMd"), locale) } diff --git a/apps/flipcash/features/messenger/src/main/kotlin/com/flipcash/app/messenger/internal/screens/MessengerScreen.kt b/apps/flipcash/features/messenger/src/main/kotlin/com/flipcash/app/messenger/internal/screens/MessengerScreen.kt index 34d6b08945..26a5cea943 100644 --- a/apps/flipcash/features/messenger/src/main/kotlin/com/flipcash/app/messenger/internal/screens/MessengerScreen.kt +++ b/apps/flipcash/features/messenger/src/main/kotlin/com/flipcash/app/messenger/internal/screens/MessengerScreen.kt @@ -480,7 +480,7 @@ internal fun MessengerScreen(viewModel: ChatViewModel) { // Before the deck is read, so requests already held are there on the first frame. val deckChat = state.chatId.takeIf { state.chatType == ChatType.GROUP } - remember(deckChat) { deckChat?.let(requestsViewModel::attach) } + remember(deckChat) { deckChat?.also(requestsViewModel::attach) } val deck by requestsViewModel.deck.collectAsStateWithLifecycle() val deckExpanded by requestsViewModel.expanded.collectAsStateWithLifecycle() val deckNow by requestsViewModel.now.collectAsStateWithLifecycle()