diff --git a/app/src/main/java/com/tangem/tap/domain/scanCard/LegacyScanProcessor.kt b/app/src/main/java/com/tangem/tap/domain/scanCard/LegacyScanProcessor.kt index 36b23b9cf2..96137b75ea 100644 --- a/app/src/main/java/com/tangem/tap/domain/scanCard/LegacyScanProcessor.kt +++ b/app/src/main/java/com/tangem/tap/domain/scanCard/LegacyScanProcessor.kt @@ -44,7 +44,10 @@ import com.tangem.tap.scope import com.tangem.tap.store import com.tangem.tap.tangemSdkManager import com.tangem.utils.extensions.DELAY_SDK_DIALOG_CLOSE -import kotlinx.coroutines.* +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext import javax.inject.Inject import javax.inject.Singleton @@ -62,6 +65,9 @@ internal class LegacyScanProcessor @Inject constructor( cardId = cardId, allowsRequestAccessCodeFromRepository = allowsRequestAccessCodeFromRepository, ) + .doOnFailure { error -> + onScanFailure(error = error, onFailure = {}, onCancel = {}) + } } @Suppress("LongParameterList") @@ -159,7 +165,7 @@ internal class LegacyScanProcessor @Inject constructor( private suspend inline fun onScanFailure( error: TangemError, crossinline onFailure: suspend (TangemError) -> Unit, - crossinline onCancel: () -> Job, + crossinline onCancel: () -> Unit, ) { if (error is TangemSdkError.CardVerificationFailed) { analyticsEventHandler.send(event = Onboarding.OfflineAttestationFailed) diff --git a/core/ui/src/main/java/com/tangem/core/ui/message/EventMessageEffect.kt b/core/ui/src/main/java/com/tangem/core/ui/message/EventMessageEffect.kt index 157d8ae538..d742b59879 100644 --- a/core/ui/src/main/java/com/tangem/core/ui/message/EventMessageEffect.kt +++ b/core/ui/src/main/java/com/tangem/core/ui/message/EventMessageEffect.kt @@ -131,6 +131,7 @@ private fun MessageDialog(message: DialogMessage, onDismissRequest: () -> Unit) ) }, onDismissDialog = onDismissRequest, + isDismissable = message.isDismissable, ) }