diff --git a/app/src/main/java/com/tangem/tap/domain/configurable/warningMessage/WarningMessagesManager.kt b/app/src/main/java/com/tangem/tap/domain/configurable/warningMessage/WarningMessagesManager.kt index ac2d922c0d..10dbcb2cbb 100644 --- a/app/src/main/java/com/tangem/tap/domain/configurable/warningMessage/WarningMessagesManager.kt +++ b/app/src/main/java/com/tangem/tap/domain/configurable/warningMessage/WarningMessagesManager.kt @@ -6,7 +6,6 @@ import com.tangem.tap.common.extensions.containsAny import com.tangem.tap.common.extensions.removeBy import com.tangem.wallet.BuildConfig import com.tangem.wallet.R -import java.util.* /** [REDACTED_AUTHOR] @@ -188,31 +187,6 @@ class WarningMessagesManager( WarningMessage.Origin.Local ) - fun restoreFundsWarning(): WarningMessage = WarningMessage( - title = "", - message = "", - type = WarningMessage.Type.Temporary, - priority = WarningMessage.Priority.Warning, - listOf(WarningMessage.Location.MainScreen), - blockchains = null, - titleResId = R.string.alert_title, - messageResId = R.string.alert_funds_restoration_message, - origin = WarningMessage.Origin.Local, - buttonTextId = R.string.warning_button_learn_more - ) - const val REMAINING_SIGNATURES_WARNING = 10 - private const val RESTORE_FUNDS_GUIDE_URL_RU = - "https://tangem.com/ru/kak-vosstanovit-tokeny-otpravlennye-ne-na-tot-adres-v-tangem-wallet" - private const val RESTORE_FUNDS_GUIDE_URL_EN = - "https://tangem.com/en/how-to-recover-crypto-sent-to-the-wrong-address-in-tangem-wallet" - - fun getRestoreFundsGuideUrl(locale: String): String { - return if (locale == Locale("ru").language) { - RESTORE_FUNDS_GUIDE_URL_RU - } else { - RESTORE_FUNDS_GUIDE_URL_EN - } - } } } \ No newline at end of file diff --git a/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletAction.kt b/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletAction.kt index ea1d5fbced..89d77cd33f 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletAction.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletAction.kt @@ -1,7 +1,11 @@ package com.tangem.tap.features.wallet.redux import android.content.Context -import com.tangem.blockchain.common.* +import com.tangem.blockchain.common.Amount +import com.tangem.blockchain.common.Blockchain +import com.tangem.blockchain.common.Token +import com.tangem.blockchain.common.Wallet +import com.tangem.blockchain.common.WalletManager import com.tangem.blockchain.common.address.AddressType import com.tangem.common.card.Card import com.tangem.tap.common.entities.FiatCurrency @@ -13,8 +17,8 @@ import com.tangem.tap.domain.configurable.warningMessage.WarningMessage import com.tangem.tap.domain.tokens.models.BlockchainNetwork import com.tangem.tap.features.wallet.models.Currency import com.tangem.wallet.R -import org.rekotlin.Action import java.math.BigDecimal +import org.rekotlin.Action sealed class WalletAction : Action { @@ -106,8 +110,6 @@ sealed class WalletAction : Action { } class CheckRemainingSignatures(val remainingSignatures: Int?) : Warnings() - - object RestoreFundsWarningClosed : Warnings() } data class LoadFiatRate( diff --git a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WarningsMiddleware.kt b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WarningsMiddleware.kt index 5197928d6e..7aa45f997d 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WarningsMiddleware.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WarningsMiddleware.kt @@ -8,7 +8,6 @@ import com.tangem.common.card.Card import com.tangem.common.card.FirmwareVersion import com.tangem.domain.common.ScanResponse import com.tangem.domain.common.TapWorkarounds.isTestCard -import com.tangem.domain.common.TapWorkarounds.useOldStyleDerivation import com.tangem.tap.common.analytics.AnalyticsEvent import com.tangem.tap.common.extensions.dispatchOnMain import com.tangem.tap.common.extensions.isGreaterThan @@ -26,15 +25,15 @@ import com.tangem.tap.preferencesStorage import com.tangem.tap.scope import com.tangem.tap.store import com.tangem.wallet.R +import java.math.BigDecimal import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import kotlinx.coroutines.withContext -import java.math.BigDecimal class WarningsMiddleware { fun handle(action: WalletAction.Warnings, globalState: GlobalState?) { when (action) { - WalletAction.Warnings.Update -> setWarningMessages() + is WalletAction.Warnings.Update -> setWarningMessages() is WalletAction.Warnings.CheckIfNeeded -> { showCardWarningsIfNeeded(globalState) val readyToShow = preferencesStorage.appRatingLaunchObserver.isReadyToShow() @@ -66,9 +65,11 @@ class WarningsMiddleware { ) } } - is WalletAction.Warnings.RestoreFundsWarningClosed -> { - preferencesStorage.saveRestoreFundsWarningClosed() - } + is WalletAction.Warnings.AppRating, + is WalletAction.Warnings.CheckHashesCount, + is WalletAction.Warnings.CheckHashesCount.ConfirmHashesCount, + is WalletAction.Warnings.CheckHashesCount.NeedToCheckHashesCountOnline, + is WalletAction.Warnings.Set -> Unit } } @@ -93,9 +94,6 @@ class WarningsMiddleware { addWarningMessage(WarningMessagesManager.testCardWarning(), autoUpdate = true) return@let } - if (card.useOldStyleDerivation && !preferencesStorage.wasRestoreFundsWarningClosed()) { - addWarningMessage(warning = WarningMessagesManager.restoreFundsWarning()) - } showWarningLowRemainingSignaturesIfNeeded(card) if (card.firmwareVersion.type != FirmwareVersion.FirmwareType.Release) { @@ -190,6 +188,7 @@ class WarningsMiddleware { true ) } + null -> Unit } } } diff --git a/app/src/main/java/com/tangem/tap/features/wallet/ui/adapters/WarningMessagesAdapter.kt b/app/src/main/java/com/tangem/tap/features/wallet/ui/adapters/WarningMessagesAdapter.kt index f77b716bc7..dee8fef67c 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/ui/adapters/WarningMessagesAdapter.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/ui/adapters/WarningMessagesAdapter.kt @@ -1,16 +1,13 @@ package com.tangem.tap.features.wallet.ui.adapters -import android.content.res.Resources import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import androidx.core.os.ConfigurationCompat import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView import com.google.android.play.core.review.ReviewManagerFactory import com.tangem.tap.common.analytics.AnalyticsEvent -import com.tangem.tap.common.extensions.dispatchOpenUrl import com.tangem.tap.common.extensions.getActivity import com.tangem.tap.common.extensions.getColor import com.tangem.tap.common.extensions.getString @@ -19,7 +16,6 @@ import com.tangem.tap.common.extensions.show import com.tangem.tap.common.feedback.RateCanBeBetterEmail import com.tangem.tap.common.redux.global.GlobalAction import com.tangem.tap.domain.configurable.warningMessage.WarningMessage -import com.tangem.tap.domain.configurable.warningMessage.WarningMessagesManager import com.tangem.tap.features.wallet.redux.WalletAction import com.tangem.tap.store import com.tangem.wallet.R @@ -89,26 +85,12 @@ class WarningMessageVH(val binding: LayoutWarningCardActionBinding) : RecyclerVi binding.btnClose.hide() val buttonAction = - when { - warning.titleResId == R.string.warning_important_security_info -> { + when (warning.titleResId) { + R.string.warning_important_security_info -> { View.OnClickListener { store.dispatch(WalletAction.DialogAction.SignedHashesMultiWalletDialog) } } - warning.messageResId == R.string.alert_funds_restoration_message -> { - binding.btnClose.show() - binding.btnClose.setOnClickListener { - store.dispatch(GlobalAction.HideWarningMessage(warning)) - store.dispatch(WalletAction.Warnings.RestoreFundsWarningClosed) - } - val locale = ConfigurationCompat - .getLocales(Resources.getSystem().configuration) - .get(0) - val url = WarningMessagesManager.getRestoreFundsGuideUrl(locale.language) - View.OnClickListener { - store.dispatchOpenUrl(url) - } - } else -> { View.OnClickListener { store.dispatch(GlobalAction.HideWarningMessage(warning)) diff --git a/app/src/main/java/com/tangem/tap/persistence/PreferencesStorage.kt b/app/src/main/java/com/tangem/tap/persistence/PreferencesStorage.kt index f676467852..15073fb931 100644 --- a/app/src/main/java/com/tangem/tap/persistence/PreferencesStorage.kt +++ b/app/src/main/java/com/tangem/tap/persistence/PreferencesStorage.kt @@ -5,7 +5,7 @@ import android.content.Context import android.content.SharedPreferences import androidx.core.content.edit import com.tangem.common.json.MoshiJsonConverter -import java.util.* +import java.util.Calendar class PreferencesStorage(applicationContext: Application) { @@ -53,20 +53,11 @@ class PreferencesStorage(applicationContext: Application) { preferences.edit { putInt(APP_LAUNCH_COUNT_KEY, ++count) } } - fun wasRestoreFundsWarningClosed(): Boolean { - return preferences.getBoolean(RESTORE_FUNDS_CLOSED_KEY, false) - } - - fun saveRestoreFundsWarningClosed() { - preferences.edit { putBoolean(RESTORE_FUNDS_CLOSED_KEY, true) } - } - companion object { private const val PREFERENCES_NAME = "tapPrefs" private const val DISCLAIMER_ACCEPTED_KEY = "disclaimerAccepted" private const val TWINS_ONBOARDING_SHOWN_KEY = "twinsOnboardingShown" private const val APP_LAUNCH_COUNT_KEY = "launchCount" - private const val RESTORE_FUNDS_CLOSED_KEY = "restoreFundsClosed" } }