瀏覽代碼

Remove categories for multi language "single" sources

arkon 4 年之前
父節點
當前提交
ff5f13eafe

+ 15 - 9
app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/ExtensionDetailsController.kt

@@ -114,17 +114,14 @@ class ExtensionDetailsController(bundle: Bundle? = null) :
         preferenceScreen = screen
 
         val isMultiSource = extension.sources.size > 1
+        val isMultiLangSingleSource = isMultiSource && extension.sources.map { it.name }.distinct().size == 1
 
         with(screen) {
             extension.sources
                 .groupBy { (it as CatalogueSource).lang }
                 .toSortedMap(compareBy { LocaleHelper.getSourceDisplayName(it, context) })
                 .forEach {
-                    preferenceCategory {
-                        if (isMultiSource) {
-                            title = LocaleHelper.getSourceDisplayName(it.key, context)
-                        }
-
+                    val preferenceBlock = {
                         it.value
                             .sortedWith(compareBy({ !it.isEnabled() }, { it.name }))
                             .forEach { source ->
@@ -132,10 +129,9 @@ class ExtensionDetailsController(bundle: Bundle? = null) :
 
                                 val block: (@DSL SwitchPreferenceCompat).() -> Unit = {
                                     key = getSourceKey(source.id)
-                                    title = if (isMultiSource) {
-                                        source.toString()
-                                    } else {
-                                        context.getString(R.string.enabled)
+                                    title = when {
+                                        isMultiSource && !isMultiLangSingleSource -> source.toString()
+                                        else -> LocaleHelper.getSourceDisplayName(it.key, context)
                                     }
                                     isPersistent = false
                                     isChecked = source.isEnabled()
@@ -171,6 +167,16 @@ class ExtensionDetailsController(bundle: Bundle? = null) :
                                 }
                             }
                     }
+
+                    if (isMultiSource && !isMultiLangSingleSource) {
+                        preferenceCategory {
+                            title = LocaleHelper.getSourceDisplayName(it.key, context)
+
+                            preferenceBlock()
+                        }
+                    } else {
+                        preferenceBlock()
+                    }
                 }
         }
 

+ 0 - 1
app/src/main/res/values/strings.xml

@@ -224,7 +224,6 @@
     <string name="unofficial_extension_message">This extension is not from the official Tachiyomi extensions list.</string>
     <string name="ext_version_info">Version: %1$s</string>
     <string name="ext_language_info">Language: %1$s</string>
-    <string name="enabled">Enabled</string>
 
       <!-- Reader section -->
     <string name="pref_fullscreen">Fullscreen</string>