Updated on 2026-08-14

This commit is contained in:
Tangem 2024-12-02 17:37:19 +04:00
parent 9315fd5b15
commit eaa676e9f5
6 changed files with 79 additions and 30 deletions

View file

@ -9,10 +9,12 @@ import androidx.compose.foundation.layout.systemBarsPadding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.input.nestedscroll.nestedScroll
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.dp
import com.tangem.core.ui.components.appbar.AppBarWithBackButton
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.utils.rememberHideKeyboardNestedScrollConnection
import com.tangem.features.onramp.impl.R
import com.tangem.features.onramp.selecttoken.entity.OnrampOperationUM
import com.tangem.features.onramp.tokenlist.OnrampTokenListComponent
@ -26,8 +28,10 @@ internal fun OnrampSelectToken(
) {
BackHandler(onBack = state.onBackClick)
val nestedScrollConnection = rememberHideKeyboardNestedScrollConnection()
LazyColumn(
modifier = modifier
.nestedScroll(nestedScrollConnection)
.background(TangemTheme.colors.background.secondary)
.imePadding()
.systemBarsPadding(),

View file

@ -8,12 +8,16 @@ import androidx.compose.foundation.layout.imePadding
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.systemBarsPadding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.ui.Modifier
import androidx.compose.ui.input.nestedscroll.nestedScroll
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.dp
import com.tangem.core.ui.components.appbar.AppBarWithBackButton
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.utils.rememberHideKeyboardNestedScrollConnection
import com.tangem.features.onramp.impl.R
import com.tangem.features.onramp.swap.availablepairs.AvailableSwapPairsComponent
import com.tangem.features.onramp.swap.entity.ExchangeCardUM
@ -40,11 +44,16 @@ internal fun SwapSelectTokens(
) {
BackHandler(onBack = state.onBackClick)
val nestedScrollConnection = rememberHideKeyboardNestedScrollConnection()
val lazyListState = rememberLazyListState()
LazyColumn(
modifier = modifier
.nestedScroll(nestedScrollConnection)
.background(TangemTheme.colors.background.secondary)
.imePadding()
.systemBarsPadding(),
state = lazyListState,
contentPadding = PaddingValues(bottom = 8.dp),
) {
stickyHeader(key = "header") {
@ -98,4 +107,9 @@ internal fun SwapSelectTokens(
}
}
}
// scroll to top after "from" token selection
LaunchedEffect(state.exchangeFrom !is ExchangeCardUM.Empty) {
lazyListState.scrollToItem(index = 0)
}
}