Remove placeholder icons, use as fallback only

This commit is contained in:
MM20 2023-05-16 17:20:26 +02:00
parent 49343e9690
commit ad3e19ce0d
No known key found for this signature in database
GPG Key ID: 0B61A8F2DEAFA389

View File

@ -65,7 +65,6 @@ class IconService(
private val cache = LruCache<String, LauncherIcon>(200) private val cache = LruCache<String, LauncherIcon>(200)
private var iconProviders: MutableStateFlow<List<IconProvider>> = MutableStateFlow(listOf()) private var iconProviders: MutableStateFlow<List<IconProvider>> = MutableStateFlow(listOf())
private var placeholderProvider: IconProvider? = null
/** /**
* Signal that installed icon packs have been updated. Force a reload of all icons. * Signal that installed icon packs have been updated. Force a reload of all icons.
@ -93,7 +92,7 @@ class IconService(
scope.launch { scope.launch {
dataStore.data.map { it.icons }.distinctUntilChanged().collectLatest { settings -> dataStore.data.map { it.icons }.distinctUntilChanged().collectLatest { settings ->
iconPacksUpdated.collectLatest { iconPacksUpdated.collectLatest {
val placeholderProvider = if (settings.themedIcons) { val fallbackProvider = if (settings.themedIcons) {
ThemedPlaceholderIconProvider(context) ThemedPlaceholderIconProvider(context)
} else { } else {
PlaceholderIconProvider(context) PlaceholderIconProvider(context)
@ -121,7 +120,7 @@ class IconService(
providers.add(CompatIconProvider(context, settings.themedIcons)) providers.add(CompatIconProvider(context, settings.themedIcons))
} }
providers.add(SystemIconProvider(context, settings.themedIcons)) providers.add(SystemIconProvider(context, settings.themedIcons))
providers.add(placeholderProvider) providers.add(fallbackProvider)
cache.evictAll() cache.evictAll()
val transformations = mutableListOf<LauncherIconTransformation>() val transformations = mutableListOf<LauncherIconTransformation>()
@ -131,7 +130,6 @@ class IconService(
ForceThemedIconTransformation() ForceThemedIconTransformation()
) )
this@IconService.placeholderProvider = placeholderProvider
iconProviders.value = providers iconProviders.value = providers
this@IconService.transformations.value = transformations this@IconService.transformations.value = transformations
} }
@ -154,9 +152,6 @@ class IconService(
return@collectLatest return@collectLatest
} }
val placeholder = placeholderProvider?.getIcon(searchable, size)
placeholder?.let { send(it) }
icon = provs.getFirstIcon(searchable, size) icon = provs.getFirstIcon(searchable, size)
if (icon != null) { if (icon != null) {
@ -193,7 +188,7 @@ class IconService(
) )
} }
if (customIcon is DefaultPlaceholderIcon) { if (customIcon is DefaultPlaceholderIcon) {
return placeholderProvider?.let { listOf(it) } ?: emptyList() return iconProviders.value.lastOrNull()?.let { listOf(it) } ?: emptyList()
} }
return emptyList() return emptyList()
} }