@@ -49,6 +49,7 @@ import com.ramcosta.composedestinations.navigation.DestinationsNavigator
49
49
import com.ramcosta.composedestinations.result.NavResult
50
50
import com.ramcosta.composedestinations.result.ResultRecipient
51
51
import com.ramcosta.composedestinations.spec.DestinationSpec
52
+ import kotlinx.coroutines.flow.collect
52
53
import kotlinx.coroutines.launch
53
54
import net.mullvad.mullvadvpn.R
54
55
import net.mullvad.mullvadvpn.compose.cell.FilterCell
@@ -79,6 +80,7 @@ import net.mullvad.mullvadvpn.compose.test.SELECT_LOCATION_CUSTOM_LIST_HEADER_TE
79
80
import net.mullvad.mullvadvpn.compose.test.SELECT_LOCATION_LOCATION_BOTTOM_SHEET_TEST_TAG
80
81
import net.mullvad.mullvadvpn.compose.textfield.SearchTextField
81
82
import net.mullvad.mullvadvpn.compose.transitions.SelectLocationTransition
83
+ import net.mullvad.mullvadvpn.compose.util.RunOnKeyChange
82
84
import net.mullvad.mullvadvpn.lib.theme.AppTheme
83
85
import net.mullvad.mullvadvpn.lib.theme.Dimens
84
86
import net.mullvad.mullvadvpn.lib.theme.color.AlphaInactive
@@ -276,8 +278,9 @@ fun SelectLocationScreen(
276
278
}
277
279
Spacer (modifier = Modifier .height(height = Dimens .verticalSpace))
278
280
val lazyListState = rememberLazyListState()
279
- val selectedItemCode = (state as ? SelectLocationUiState .Content )?.selectedItem?.code
280
- LaunchedEffect (selectedItemCode) {
281
+ val selectedItemCode =
282
+ (state as ? SelectLocationUiState .Content )?.selectedItem?.code ? : " "
283
+ RunOnKeyChange (key = selectedItemCode) {
281
284
val index = state.indexOfSelectedRelayItem()
282
285
283
286
if (index >= 0 ) {
0 commit comments