mirror of
https://github.com/tachiyomiorg/tachiyomi.git
synced 2024-11-10 15:57:47 +01:00
Only update in-library manga chapter settings instead of all
This commit is contained in:
parent
ed80ee98a7
commit
776194f5b2
2 changed files with 28 additions and 30 deletions
|
@ -1,5 +1,6 @@
|
|||
package eu.kanade.tachiyomi.data.database.queries
|
||||
|
||||
import com.pushtorefresh.storio.sqlite.operations.get.PreparedGetListOfObjects
|
||||
import com.pushtorefresh.storio.sqlite.queries.DeleteQuery
|
||||
import com.pushtorefresh.storio.sqlite.queries.Query
|
||||
import com.pushtorefresh.storio.sqlite.queries.RawQuery
|
||||
|
@ -14,15 +15,6 @@ import eu.kanade.tachiyomi.data.database.tables.MangaTable
|
|||
|
||||
interface MangaQueries : DbProvider {
|
||||
|
||||
fun getMangas() = db.get()
|
||||
.listOfObjects(Manga::class.java)
|
||||
.withQuery(
|
||||
Query.builder()
|
||||
.table(MangaTable.TABLE)
|
||||
.build()
|
||||
)
|
||||
.prepare()
|
||||
|
||||
fun getLibraryMangas() = db.get()
|
||||
.listOfObjects(LibraryManga::class.java)
|
||||
.withQuery(
|
||||
|
@ -34,17 +26,21 @@ interface MangaQueries : DbProvider {
|
|||
.withGetResolver(LibraryMangaGetResolver.INSTANCE)
|
||||
.prepare()
|
||||
|
||||
fun getFavoriteMangas() = db.get()
|
||||
.listOfObjects(Manga::class.java)
|
||||
.withQuery(
|
||||
Query.builder()
|
||||
.table(MangaTable.TABLE)
|
||||
.where("${MangaTable.COL_FAVORITE} = ?")
|
||||
.whereArgs(1)
|
||||
.orderBy(MangaTable.COL_TITLE)
|
||||
.build()
|
||||
)
|
||||
.prepare()
|
||||
fun getFavoriteMangas(sortByTitle: Boolean = true): PreparedGetListOfObjects<Manga> {
|
||||
var queryBuilder = Query.builder()
|
||||
.table(MangaTable.TABLE)
|
||||
.where("${MangaTable.COL_FAVORITE} = ?")
|
||||
.whereArgs(1)
|
||||
|
||||
if (sortByTitle) {
|
||||
queryBuilder = queryBuilder.orderBy(MangaTable.COL_TITLE)
|
||||
}
|
||||
|
||||
return db.get()
|
||||
.listOfObjects(Manga::class.java)
|
||||
.withQuery(queryBuilder.build())
|
||||
.prepare()
|
||||
}
|
||||
|
||||
fun getManga(url: String, sourceId: Long) = db.get()
|
||||
.`object`(Manga::class.java)
|
||||
|
|
|
@ -44,17 +44,19 @@ object ChapterSettingsHelper {
|
|||
*/
|
||||
fun updateAllMangasWithGlobalDefaults() {
|
||||
launchIO {
|
||||
val updatedMangas = db.getMangas().executeAsBlocking().map { manga ->
|
||||
with(manga) {
|
||||
readFilter = prefs.filterChapterByRead()
|
||||
downloadedFilter = prefs.filterChapterByDownloaded()
|
||||
bookmarkedFilter = prefs.filterChapterByBookmarked()
|
||||
sorting = prefs.sortChapterBySourceOrNumber()
|
||||
displayMode = prefs.displayChapterByNameOrNumber()
|
||||
setChapterOrder(prefs.sortChapterByAscendingOrDescending())
|
||||
val updatedMangas = db.getFavoriteMangas(sortByTitle = false)
|
||||
.executeAsBlocking()
|
||||
.map { manga ->
|
||||
with(manga) {
|
||||
readFilter = prefs.filterChapterByRead()
|
||||
downloadedFilter = prefs.filterChapterByDownloaded()
|
||||
bookmarkedFilter = prefs.filterChapterByBookmarked()
|
||||
sorting = prefs.sortChapterBySourceOrNumber()
|
||||
displayMode = prefs.displayChapterByNameOrNumber()
|
||||
setChapterOrder(prefs.sortChapterByAscendingOrDescending())
|
||||
}
|
||||
manga
|
||||
}
|
||||
manga
|
||||
}
|
||||
|
||||
db.updateChapterFlags(updatedMangas).executeAsBlocking()
|
||||
db.updateViewerFlags(updatedMangas).executeAsBlocking()
|
||||
|
|
Loading…
Reference in a new issue