From 3ee4b4a61e0e63ab42fbb629f6239e7213df1589 Mon Sep 17 00:00:00 2001 From: Officer Date: Wed, 1 Nov 2023 15:11:53 +0800 Subject: [PATCH] Cleanup ReaderActivity & Fix activity not finish when no archive passwd available --- .../tachiyomi/ui/reader/ReaderActivity.kt | 29 ++++++++++--------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/app/src/main/kotlin/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt b/app/src/main/kotlin/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt index 72e85ab21..bef317d0a 100644 --- a/app/src/main/kotlin/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt +++ b/app/src/main/kotlin/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt @@ -104,8 +104,6 @@ import eu.kanade.tachiyomi.util.view.setTooltip import eu.kanade.tachiyomi.widget.listener.SimpleAnimationListener import java.io.File import java.io.IOException -import java.util.concurrent.atomic.AtomicReference -import kotlin.coroutines.Continuation import kotlin.math.abs import kotlinx.coroutines.FlowPreview import kotlinx.coroutines.flow.drop @@ -217,23 +215,26 @@ class ReaderActivity : EhActivity() { Toast.makeText(this, R.string.error_reading_failed, Toast.LENGTH_SHORT).show() } - val continuation: AtomicReference?> = AtomicReference(null) mGalleryProvider = ArchivePageLoader( appCtx, mUri!!, ) { invalidator -> - dialogState.awaitInputText( - title = getString(R.string.archive_need_passwd), - hint = getString(R.string.archive_passwd), - ) { - if (it.isBlank()) { - getString(R.string.passwd_cannot_be_empty) - } else if (invalidator(it)) { - null - } else { - getString(R.string.passwd_wrong) + runCatching { + dialogState.awaitInputText( + title = getString(R.string.archive_need_passwd), + hint = getString(R.string.archive_passwd), + ) { + if (it.isBlank()) { + getString(R.string.passwd_cannot_be_empty) + } else if (invalidator(it)) { + null + } else { + getString(R.string.passwd_wrong) + } } - } + }.onFailure { + finish() + }.getOrThrow() } } } else {