From b13a54b808db244830095c22e9eb7d7832e220ae Mon Sep 17 00:00:00 2001 From: Tangem Date: Thu, 9 Jun 2022 09:50:27 +0400 Subject: [PATCH] Updated on 2026-08-14 --- .../features/details/redux/DetailsAction.kt | 2 ++ .../features/details/redux/DetailsReducer.kt | 3 +++ .../features/details/redux/DetailsState.kt | 2 ++ .../features/details/ui/DetailsFragment.kt | 3 +++ .../middlewares/AppCurrencyMiddleware.kt | 2 ++ app/src/main/res/layout/fragment_details.xml | 19 ++++++++++++++++--- 6 files changed, 28 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/features/details/redux/DetailsAction.kt b/app/src/main/java/com/tangem/tap/features/details/redux/DetailsAction.kt index 0739effc65..c37a625c54 100644 --- a/app/src/main/java/com/tangem/tap/features/details/redux/DetailsAction.kt +++ b/app/src/main/java/com/tangem/tap/features/details/redux/DetailsAction.kt @@ -5,6 +5,7 @@ import com.tangem.common.card.Card import com.tangem.domain.common.ScanResponse import com.tangem.domain.common.TwinCardNumber import com.tangem.operations.pins.CheckUserCodesResponse +import com.tangem.tap.common.entities.FiatCurrency import com.tangem.tap.common.redux.NotificationAction import com.tangem.tap.domain.termsOfUse.CardTou import com.tangem.wallet.R @@ -58,4 +59,5 @@ sealed class DetailsAction : Action { } } + data class ChangeAppCurrency(val fiatCurrency: FiatCurrency) : DetailsAction() } \ No newline at end of file diff --git a/app/src/main/java/com/tangem/tap/features/details/redux/DetailsReducer.kt b/app/src/main/java/com/tangem/tap/features/details/redux/DetailsReducer.kt index 45910f64c4..a095d46d7e 100644 --- a/app/src/main/java/com/tangem/tap/features/details/redux/DetailsReducer.kt +++ b/app/src/main/java/com/tangem/tap/features/details/redux/DetailsReducer.kt @@ -31,6 +31,9 @@ private fun internalReduce(action: Action, state: AppState): DetailsState { is DetailsAction.ManageSecurity -> { handleSecurityAction(action, detailsState) } + is DetailsAction.ChangeAppCurrency -> + detailsState.copy(appCurrency = action.fiatCurrency) + else -> detailsState } } diff --git a/app/src/main/java/com/tangem/tap/features/details/redux/DetailsState.kt b/app/src/main/java/com/tangem/tap/features/details/redux/DetailsState.kt index eca730c5e2..ee6fd2bb7e 100644 --- a/app/src/main/java/com/tangem/tap/features/details/redux/DetailsState.kt +++ b/app/src/main/java/com/tangem/tap/features/details/redux/DetailsState.kt @@ -4,6 +4,7 @@ import android.net.Uri import com.tangem.blockchain.common.Wallet import com.tangem.domain.common.ScanResponse import com.tangem.tap.common.entities.Button +import com.tangem.tap.common.entities.FiatCurrency import com.tangem.tap.features.onboarding.products.twins.redux.TwinCardsState import com.tangem.tap.store import org.rekotlin.StateType @@ -19,6 +20,7 @@ data class DetailsState( val securityScreenState: SecurityScreenState? = null, val cardTermsOfUseUrl: Uri? = null, val createBackupAllowed: Boolean = false, + val appCurrency: FiatCurrency = FiatCurrency.Default ) : StateType { // if you do not delegate - the application crashes on startup, diff --git a/app/src/main/java/com/tangem/tap/features/details/ui/DetailsFragment.kt b/app/src/main/java/com/tangem/tap/features/details/ui/DetailsFragment.kt index f536a8c356..e8f3b56a62 100644 --- a/app/src/main/java/com/tangem/tap/features/details/ui/DetailsFragment.kt +++ b/app/src/main/java/com/tangem/tap/features/details/ui/DetailsFragment.kt @@ -116,6 +116,9 @@ class DetailsFragment : Fragment(R.layout.fragment_details), StoreSubscriber + + + @@ -243,7 +256,7 @@ app:drawableEndCompat="@drawable/ic_angle_bracket_right" app:drawableTint="@color/darkGray1" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@id/tv_app_currency" /> + app:layout_constraintTop_toBottomOf="@id/tv_app_currency_title" />