Updated on 2026-08-14

This commit is contained in:
Tangem 2021-09-30 01:05:15 +03:00
parent 0ec0d79028
commit 9034dcd682
5 changed files with 9 additions and 13 deletions

View file

@ -1,7 +1,7 @@
package com.tangem.tap.common.entities
import com.tangem.tap.common.toggleWidget.ProgressState
import com.tangem.tap.features.send.redux.states.ButtonState
import com.tangem.tap.features.wallet.redux.ProgressState
open class Button(val enabled: Boolean)
@ -11,7 +11,7 @@ open class IndeterminateProgressButton(
val progressState: ProgressState
get() = when (state) {
ButtonState.PROGRESS -> ProgressState.Progress()
else -> ProgressState.None
ButtonState.PROGRESS -> ProgressState.Loading
else -> ProgressState.Done
}
}

View file

@ -5,6 +5,7 @@ import android.view.View
import com.google.android.material.button.MaterialButton
import com.tangem.tap.common.extensions.hide
import com.tangem.tap.common.extensions.show
import com.tangem.tap.features.wallet.redux.ProgressState
/**
[REDACTED_AUTHOR]
@ -12,7 +13,7 @@ import com.tangem.tap.common.extensions.show
open class IndeterminateProgressButtonWidget(
private val button: MaterialButton,
private val progress: View,
initialState: ProgressState = ProgressState.None
initialState: ProgressState = ProgressState.Done
) : ViewStateWidget {
private var initialButtonText: CharSequence = button.text
@ -29,8 +30,8 @@ open class IndeterminateProgressButtonWidget(
val progressState = state as? ProgressState ?: return
when (progressState) {
is ProgressState.None -> switchToNone()
is ProgressState.Progress -> switchToProgress()
ProgressState.Done, ProgressState.Error -> switchToNone()
ProgressState.Loading -> switchToProgress()
}
}

View file

@ -11,9 +11,4 @@ interface WidgetState
interface ViewStateWidget {
val mainView: View
fun changeState(state: WidgetState)
}
sealed class ProgressState : WidgetState {
object None : ProgressState()
data class Progress(val progress: Int = 0) : ProgressState()
}

View file

@ -10,7 +10,6 @@ import androidx.core.text.bold
import com.tangem.tap.common.extensions.*
import com.tangem.tap.common.redux.getMessageString
import com.tangem.tap.common.text.DecimalDigitsInputFilter
import com.tangem.tap.common.toggleWidget.ProgressState
import com.tangem.tap.domain.MultiMessageError
import com.tangem.tap.domain.assembleErrors
import com.tangem.tap.features.send.BaseStoreFragment

View file

@ -8,6 +8,7 @@ import com.tangem.tap.common.entities.Button
import com.tangem.tap.common.extensions.toQrCode
import com.tangem.tap.common.redux.StateDialog
import com.tangem.tap.common.redux.global.CryptoCurrencyName
import com.tangem.tap.common.toggleWidget.WidgetState
import com.tangem.tap.domain.configurable.warningMessage.WarningMessage
import com.tangem.tap.domain.extensions.toSendableAmounts
import com.tangem.tap.domain.topup.TradeCryptoHelper
@ -146,7 +147,7 @@ sealed class WalletDialog: StateDialog {
object ChooseTradeActionDialog : WalletDialog()
}
enum class ProgressState { Loading, Done, Error }
enum class ProgressState: WidgetState { Loading, Done, Error }
enum class ErrorType { NoInternetConnection }