From 7eb39b3c4c28c191c3ebf5b867d6499350513c16 Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Wed, 9 Jul 2025 09:03:56 -0400 Subject: [PATCH] Readjusts relay view on profile --- .../loggedIn/profile/relays/RelayFeedView.kt | 43 ++++++++++++------- 1 file changed, 27 insertions(+), 16 deletions(-) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/profile/relays/RelayFeedView.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/profile/relays/RelayFeedView.kt index 3076df88d6..d83373ab02 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/profile/relays/RelayFeedView.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/profile/relays/RelayFeedView.kt @@ -29,7 +29,9 @@ import androidx.compose.runtime.getValue import androidx.compose.ui.platform.LocalClipboardManager import androidx.compose.ui.text.AnnotatedString import androidx.lifecycle.compose.collectAsStateWithLifecycle +import com.vitorpamplona.amethyst.model.RelayInfo import com.vitorpamplona.amethyst.ui.feeds.RefresheableBox +import com.vitorpamplona.amethyst.ui.navigation.EmptyNav.nav import com.vitorpamplona.amethyst.ui.navigation.INav import com.vitorpamplona.amethyst.ui.navigation.Route import com.vitorpamplona.amethyst.ui.note.RelayCompose @@ -48,28 +50,37 @@ fun RelayFeedView( RefresheableBox(viewModel, enablePullRefresh) { val listState = rememberLazyListState() - val clipboardManager = LocalClipboardManager.current LazyColumn( contentPadding = FeedPadding, state = listState, ) { - itemsIndexed(feedState, key = { _, item -> item.url }) { _, item -> - RelayCompose( - item, - accountViewModel = accountViewModel, - onAddRelay = { - clipboardManager.setText(AnnotatedString(item.url.url)) - nav.nav(Route.EditRelays) - }, - onRemoveRelay = { - nav.nav(Route.EditRelays) - }, - ) - HorizontalDivider( - thickness = DividerThickness, - ) + itemsIndexed(feedState, key = { _, item -> item.url.url }) { _, item -> + RenderRelayRow(item, accountViewModel, nav) } } } } + +@Composable +private fun RenderRelayRow( + relay: RelayInfo, + accountViewModel: AccountViewModel, + nav: INav, +) { + val clipboardManager = LocalClipboardManager.current + RelayCompose( + relay, + accountViewModel = accountViewModel, + onAddRelay = { + clipboardManager.setText(AnnotatedString(relay.url.url)) + nav.nav(Route.EditRelays) + }, + onRemoveRelay = { + nav.nav(Route.EditRelays) + }, + ) + HorizontalDivider( + thickness = DividerThickness, + ) +}