From d670a750cdb04fc603e91c2b055b59ba9286d2c0 Mon Sep 17 00:00:00 2001 From: greenart7c3 Date: Wed, 8 Apr 2026 14:24:27 -0300 Subject: [PATCH] Optimize relay connection status tracking in EditRelaysDialog Wrap the `connectedRelaysFlow` mapping in a `remember(relay)` block to prevent unnecessary flow re-allocation and recompositions when the UI updates. --- .../greenart7c3/nostrsigner/ui/actions/EditRelaysDialog.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/greenart7c3/nostrsigner/ui/actions/EditRelaysDialog.kt b/app/src/main/java/com/greenart7c3/nostrsigner/ui/actions/EditRelaysDialog.kt index bab585f0..4c36cb86 100644 --- a/app/src/main/java/com/greenart7c3/nostrsigner/ui/actions/EditRelaysDialog.kt +++ b/app/src/main/java/com/greenart7c3/nostrsigner/ui/actions/EditRelaysDialog.kt @@ -643,8 +643,10 @@ fun ActiveRelaysScreen( Column( verticalArrangement = Arrangement.Center, ) { - val isConnected by Amber.instance.client.connectedRelaysFlow().map { status -> - relay in status + val isConnected by remember(relay) { + Amber.instance.client.connectedRelaysFlow().map { status -> + relay in status + } }.collectAsStateWithLifecycle(relay in Amber.instance.client.connectedRelaysFlow().value) Row(