Fix Local and Other lang sources showing up in seperate Other Categories (#6024)

* group LocalSource and Other lang source together

* use better kotlin syntactic sugar

* add lang "other" to local

* remove duplicate LocalSource entries in Browse

* linting

* revert unnecessary linting

was a manually adding change

* Revert previous two commit but not the most recent

This reverts commit 30250f2f82
This also reversts commit 359ed5a8cd

* better way to avoid duplicate Local Sources

* more linting by plugin

* `""` lang is no longer used anywhere
This commit is contained in:
nicki 2021-10-09 20:31:22 +05:30 committed by GitHub
parent a56997e98c
commit 2d1404d155
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 4 additions and 5 deletions

View File

@ -80,7 +80,7 @@ class LocalSource(private val context: Context) : CatalogueSource {
override val id = ID
override val name = context.getString(R.string.local_source)
override val lang = ""
override val lang = "other"
override val supportsLatest = true
override fun toString() = context.getString(R.string.local_source)

View File

@ -120,10 +120,9 @@ class SourcePresenter(
val disabledSourceIds = preferences.disabledSources().get()
return sourceManager.getCatalogueSources()
.filter { it.lang in languages }
.filter { it.lang in languages || it.id == LocalSource.ID }
.filterNot { it.id.toString() in disabledSourceIds }
.sortedBy { "(${it.lang}) ${it.name.lowercase()}" } +
sourceManager.get(LocalSource.ID) as LocalSource
.sortedBy { "(${it.lang}) ${it.name.lowercase()}" }
}
companion object {

View File

@ -16,9 +16,9 @@ object LocaleHelper {
*/
fun getSourceDisplayName(lang: String?, context: Context): String {
return when (lang) {
"" -> context.getString(R.string.other_source)
SourcePresenter.LAST_USED_KEY -> context.getString(R.string.last_used_source)
SourcePresenter.PINNED_KEY -> context.getString(R.string.pinned_sources)
"other" -> context.getString(R.string.other_source)
"all" -> context.getString(R.string.all_lang)
else -> getDisplayName(lang)
}