Fix autofill exclusion

This commit is contained in:
Jobobby04 2020-09-14 14:04:20 -04:00
parent 92ae67630c
commit 9aab9d4ca4

View File

@ -49,8 +49,10 @@ import exh.ui.metadata.adapters.EHentaiDescriptionAdapter
import exh.util.UriFilter import exh.util.UriFilter
import exh.util.UriGroup import exh.util.UriGroup
import exh.util.asObservableWithAsyncStacktrace import exh.util.asObservableWithAsyncStacktrace
import exh.util.dropBlank
import exh.util.ignore import exh.util.ignore
import exh.util.nullIfBlank import exh.util.nullIfBlank
import exh.util.trimAll
import exh.util.trimOrNull import exh.util.trimOrNull
import exh.util.urlImportFetchSearchManga import exh.util.urlImportFetchSearchManga
import kotlinx.coroutines.runBlocking import kotlinx.coroutines.runBlocking
@ -818,14 +820,13 @@ class EHentai(
private fun combineQuery(filters: FilterList): String { private fun combineQuery(filters: FilterList): String {
val stringBuilder = StringBuilder() val stringBuilder = StringBuilder()
val advSearch = filters.filterIsInstance<Filter.AutoComplete>().flatMap { filter -> val advSearch = filters.filterIsInstance<Filter.AutoComplete>().flatMap { filter ->
val splitState = filter.state.map(String::trim).filterNot(String::isBlank) val splitState = filter.state.trimAll().dropBlank()
splitState.mapNotNull { tag -> splitState.mapNotNull { tag ->
val split = tag.split(":").filterNot { it.isBlank() }.toMutableList() val split = tag.split(":").filterNot { it.isBlank() }
if (split.size > 1) { if (split.size > 1) {
val namespace = split[0].removePrefix("-") val namespace = split[0].removePrefix("-")
val exclude = split[0].startsWith("-") val exclude = split[0].startsWith("-")
split -= namespace AdvSearchEntry(Pair(namespace, split[1]), exclude)
AdvSearchEntry(Pair(namespace, split.joinToString(":")), exclude)
} else { } else {
null null
} }