Updated on 2026-08-14
This commit is contained in:
parent
36394c1130
commit
bdc390ecd5
2 changed files with 9 additions and 1 deletions
|
|
@ -30,6 +30,9 @@ internal class WalletStateController @Inject constructor() {
|
|||
|
||||
val value: WalletScreenState get() = uiState.value
|
||||
|
||||
val isInitialized: Boolean
|
||||
get() = value.selectedWalletIndex != NOT_INITIALIZED_WALLET_INDEX
|
||||
|
||||
private val mutableUiState: MutableStateFlow<WalletScreenState> = MutableStateFlow(value = getInitialState())
|
||||
|
||||
fun update(function: (WalletScreenState) -> WalletScreenState) {
|
||||
|
|
|
|||
|
|
@ -7,7 +7,10 @@ import androidx.lifecycle.viewModelScope
|
|||
import arrow.core.getOrElse
|
||||
import com.tangem.core.analytics.api.AnalyticsEventHandler
|
||||
import com.tangem.domain.balancehiding.GetBalanceHidingSettingsUseCase
|
||||
import com.tangem.domain.settings.*
|
||||
import com.tangem.domain.settings.CanUseBiometryUseCase
|
||||
import com.tangem.domain.settings.IsWalletsScrollPreviewEnabled
|
||||
import com.tangem.domain.settings.ShouldAskPermissionUseCase
|
||||
import com.tangem.domain.settings.ShouldShowSaveWalletScreenUseCase
|
||||
import com.tangem.domain.tokens.RefreshMultiCurrencyWalletQuotesUseCase
|
||||
import com.tangem.domain.wallets.models.UserWalletId
|
||||
import com.tangem.domain.wallets.usecase.GetSelectedWalletUseCase
|
||||
|
|
@ -190,6 +193,8 @@ internal class WalletViewModel @Inject constructor(
|
|||
|
||||
/** Change selected wallet state if selected wallet [selectedWalletId] was changed in the background */
|
||||
private suspend fun changeSelectedWalletState(selectedWalletId: UserWalletId) {
|
||||
if (!stateHolder.isInitialized) return
|
||||
|
||||
if (screenLifecycleProvider.isBackgroundState.value && selectedWalletId != stateHolder.getSelectedWalletId()) {
|
||||
stateHolder.value.wallets
|
||||
.indexOfFirstOrNull { prevState -> prevState.walletCardState.id == selectedWalletId }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue