Sort sources/extensions filter languages
(cherry picked from commit 0bf14fd31c9b1d3274be23acabf4d34f18864f90) # Conflicts: # app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsSourcesController.kt
This commit is contained in:
parent
1f67e462ea
commit
7d4af98cfb
@ -91,7 +91,6 @@ open class ExtensionController :
|
||||
ExtensionFilterController().withFadeTransaction()
|
||||
)
|
||||
}
|
||||
else -> return super.onOptionsItemSelected(item)
|
||||
}
|
||||
return super.onOptionsItemSelected(item)
|
||||
}
|
||||
|
@ -45,11 +45,12 @@ class ExtensionDetailsController(bundle: Bundle? = null) :
|
||||
val extension = presenter.extension ?: return
|
||||
val context = view.context
|
||||
|
||||
extension.getApplicationIcon(context)?.let { binding.extensionIcon.setImageDrawable(it) }
|
||||
binding.extensionTitle.text = extension.name
|
||||
binding.extensionVersion.text = context.getString(R.string.ext_version_info, extension.versionName)
|
||||
binding.extensionLang.text = context.getString(R.string.ext_language_info, LocaleHelper.getSourceDisplayName(extension.lang, context))
|
||||
binding.extensionPkg.text = extension.pkgName
|
||||
extension.getApplicationIcon(context)?.let { binding.extensionIcon.setImageDrawable(it) }
|
||||
|
||||
binding.extensionUninstallButton.clicks()
|
||||
.onEach { presenter.uninstallExtension() }
|
||||
.launchIn(scope)
|
||||
|
@ -21,11 +21,9 @@ class ExtensionFilterController : SettingsController() {
|
||||
val availableLangs =
|
||||
Injekt.get<ExtensionManager>().availableExtensions.groupBy {
|
||||
it.lang
|
||||
}.keys.minus("all").partition {
|
||||
it in activeLangs
|
||||
}.let {
|
||||
it.first + it.second
|
||||
}
|
||||
}.keys
|
||||
.minus("all")
|
||||
.sortedWith(compareBy({ it !in activeLangs }, { LocaleHelper.getSourceDisplayName(it, context) }))
|
||||
|
||||
availableLangs.forEach {
|
||||
switchPreference {
|
||||
@ -38,11 +36,11 @@ class ExtensionFilterController : SettingsController() {
|
||||
val checked = newValue as Boolean
|
||||
val currentActiveLangs = preferences.enabledLanguages().get()
|
||||
|
||||
if (checked) {
|
||||
preferences.enabledLanguages().set(currentActiveLangs + it)
|
||||
preferences.enabledLanguages().set(if (checked) {
|
||||
currentActiveLangs + it
|
||||
} else {
|
||||
preferences.enabledLanguages().set(currentActiveLangs - it)
|
||||
}
|
||||
currentActiveLangs - it
|
||||
})
|
||||
true
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user