feat: enhance chat and requests screens with avatar handling, pinning, and user blocking functionalities

This commit is contained in:
2026-02-11 05:50:08 +05:00
parent a0ef378909
commit 8c8a651500
13 changed files with 1244 additions and 451 deletions

View File

@@ -710,15 +710,22 @@ fun MainScreen(
isDarkTheme = isDarkTheme
) {
RequestsListScreen(
isDarkTheme = isDarkTheme,
chatsViewModel = chatsListViewModel,
onBack = { navStack = navStack.filterNot { it is Screen.Requests } },
onUserSelect = { selectedRequestUser ->
navStack =
navStack.filterNot {
it is Screen.Requests || it is Screen.ChatDetail
} + Screen.ChatDetail(selectedRequestUser)
isDarkTheme = isDarkTheme,
chatsViewModel = chatsListViewModel,
pinnedChats = pinnedChats,
onTogglePin = { opponentKey ->
mainScreenScope.launch {
prefsManager.togglePinChat(opponentKey)
}
},
onBack = { navStack = navStack.filterNot { it is Screen.Requests } },
onUserSelect = { selectedRequestUser ->
navStack =
navStack.filterNot {
it is Screen.ChatDetail || it is Screen.OtherProfile
} + Screen.ChatDetail(selectedRequestUser)
},
avatarRepository = avatarRepository
)
}