diff --git a/app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt b/app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt index 2f1ed4c6dc..10cfdc6316 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt @@ -421,7 +421,7 @@ class ExtensionManager( private fun Extension.Installed.updateExists(availableExtension: Extension.Available? = null): Boolean { val availableExt = availableExtension ?: availableExtensionsFlow.value.find { it.pkgName == pkgName } - if (availableExt == null) return false + ?: return false return (availableExt.versionCode > versionCode || availableExt.libVersion > libVersion) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionApi.kt b/app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionApi.kt index 7762fa9c73..e8968d22b4 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionApi.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionApi.kt @@ -98,8 +98,6 @@ internal class ExtensionApi { libVersion = it.extractLibVersion(), lang = it.lang, isNsfw = it.nsfw == 1, - hasReadme = it.hasReadme == 1, - hasChangelog = it.hasChangelog == 1, sources = it.sources ?: emptyList(), apkName = it.apk, iconUrl = "$repoUrl/icon/${it.pkg}.png", diff --git a/app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt b/app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt index 5a1adcbd8a..5065af8d5a 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt @@ -13,8 +13,6 @@ sealed class Extension { abstract val libVersion: Double abstract val lang: String? abstract val isNsfw: Boolean - abstract val hasReadme: Boolean - abstract val hasChangelog: Boolean data class Installed( override val name: String, @@ -24,8 +22,6 @@ sealed class Extension { override val libVersion: Double, override val lang: String, override val isNsfw: Boolean, - override val hasReadme: Boolean, - override val hasChangelog: Boolean, val pkgFactory: String?, val sources: List, val icon: Drawable?, @@ -43,8 +39,6 @@ sealed class Extension { override val libVersion: Double, override val lang: String, override val isNsfw: Boolean, - override val hasReadme: Boolean, - override val hasChangelog: Boolean, val apkName: String, val iconUrl: String, val sources: List, @@ -68,7 +62,5 @@ sealed class Extension { val signatureHash: String, override val lang: String? = null, override val isNsfw: Boolean = false, - override val hasReadme: Boolean = false, - override val hasChangelog: Boolean = false, ) : Extension() } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/extension/ExtensionHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/extension/ExtensionHolder.kt index 0bbf1c305b..5bd7f22fbb 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/extension/ExtensionHolder.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/extension/ExtensionHolder.kt @@ -93,11 +93,9 @@ class ExtensionHolder(view: View, val adapter: ExtensionAdapter) : binding.version.text = infoText.joinToString(" • ") binding.lang.text = LocaleHelper.getDisplayName(extension.lang) binding.warning.text = when { - extension is Extension.Untrusted -> itemView.context.getString(R.string.untrusted) - extension is Extension.Installed && extension.isObsolete -> itemView.context.getString(R.string.obsolete) extension.isNsfw -> itemView.context.getString(R.string.nsfw_short) else -> "" - }.uppercase(Locale.ROOT) + }.plusRepo(extension).uppercase(Locale.ROOT) binding.installProgress.progress = item.sessionProgress ?: 0 binding.installProgress.isVisible = item.sessionProgress != null binding.cancelButton.isVisible = item.sessionProgress != null @@ -114,6 +112,19 @@ class ExtensionHolder(view: View, val adapter: ExtensionAdapter) : bindButton(item) } + private fun String.plusRepo(extension: Extension): String { + val repoText = when { + extension is Extension.Untrusted -> itemView.context.getString(R.string.untrusted) + extension is Extension.Installed && extension.isObsolete -> itemView.context.getString(R.string.obsolete) + else -> "" + } + return if (isEmpty()) { + this + } else { + "$this • " + } + repoText + } + @Suppress("ResourceType") fun bindButton(item: ExtensionItem) = with(binding.extButton) { if (item.installStep == InstallStep.Done) return@with