Using extension icon instead of letter for catalogues (closes #2261)

This commit is contained in:
Jay
2020-03-20 01:52:03 -04:00
committed by arkon
parent 224f08279b
commit f115fe47fe
8 changed files with 40 additions and 19 deletions
@@ -1,6 +1,7 @@
package eu.kanade.tachiyomi.extension
import android.content.Context
import android.graphics.drawable.Drawable
import com.jakewharton.rxrelay.BehaviorRelay
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
@@ -11,6 +12,7 @@ import eu.kanade.tachiyomi.extension.model.LoadResult
import eu.kanade.tachiyomi.extension.util.ExtensionInstallReceiver
import eu.kanade.tachiyomi.extension.util.ExtensionInstaller
import eu.kanade.tachiyomi.extension.util.ExtensionLoader
import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.SourceManager
import eu.kanade.tachiyomi.util.lang.launchNow
import kotlinx.coroutines.async
@@ -57,6 +59,12 @@ class ExtensionManager(
installedExtensionsRelay.call(value)
}
fun getAppIconForSource(source: Source): Drawable? {
val pkgName = installedExtensions.find { ext -> ext.sources.any { it.id == source.id } }?.pkgName
return if (pkgName != null) context.packageManager.getApplicationIcon(pkgName)
else null
}
/**
* Relay used to notify the available extensions.
*/