fix(searching): fix filter-list param when doing search with some ext while doing: (#1006)

- Smart search
- Suggestions
This commit is contained in:
Cuong-Tran 2025-06-15 21:38:00 +07:00 committed by GitHub
parent 6c530e4fca
commit 87563a239c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 5 additions and 6 deletions

View file

@ -180,7 +180,7 @@ private fun ColumnScope.FilterPage(
)
// SY <--
// KMY -->
// KMK -->
CategoriesFilter(
libraryPreferences = screenModel.libraryPreferences,
categories = categories,

View file

@ -8,7 +8,6 @@ import eu.kanade.tachiyomi.data.database.models.Track
import eu.kanade.tachiyomi.data.track.BaseTracker
import eu.kanade.tachiyomi.data.track.model.TrackMangaMetadata
import eu.kanade.tachiyomi.data.track.model.TrackSearch
import eu.kanade.tachiyomi.source.model.FilterList
import eu.kanade.tachiyomi.source.model.SManga
import exh.md.network.MangaDexAuthInterceptor
import exh.md.utils.FollowStatus
@ -149,7 +148,7 @@ class MdList(id: Long) : BaseTracker(id, "MDList") {
override suspend fun search(query: String): List<TrackSearch> {
return withIOContext {
val mdex = mdex ?: throw MangaDexNotFoundException()
mdex.getSearchManga(1, query, FilterList())
mdex.getSearchManga(1, query, mdex.getFilterList())
.mangas
.map {
toTrackSearch(mdex.getMangaDetails(it))

View file

@ -1,7 +1,6 @@
package exh.smartsearch
import eu.kanade.tachiyomi.source.CatalogueSource
import eu.kanade.tachiyomi.source.model.FilterList
import eu.kanade.tachiyomi.source.model.SManga
import mihon.domain.manga.model.toDomainManga
import tachiyomi.domain.manga.model.Manga
@ -23,5 +22,5 @@ class SmartSourceSearchEngine(
}
private fun makeSearchAction(source: CatalogueSource): SearchAction<SManga> =
{ query -> source.getSearchManga(1, query, FilterList()).mangas }
{ query -> source.getSearchManga(1, query, source.getFilterList()).mangas }
}

View file

@ -185,10 +185,11 @@ interface CatalogueSource : Source {
if (words.isEmpty()) return
coroutineScope {
val filterList = getFilterList()
words.map { keyword ->
launch {
runCatching {
getSearchManga(1, keyword.sanitize(), FilterList()).mangas
getSearchManga(1, keyword.sanitize(), filterList).mangas
}
.onSuccess { if (it.isNotEmpty()) pushResults(Pair(keyword, it), false) }
.onFailure { e ->