Maintain correct source order even when receiving new chapters from a sync service (#1360)
* Maintain correct source order even when receiving new chapters from sync service * Add comma required by build service
This commit is contained in:
parent
a25aff7fb0
commit
a32c7186e4
@ -202,6 +202,7 @@ class MangaRestorer(
|
|||||||
bookmark = chapter.bookmark || dbChapter.bookmark,
|
bookmark = chapter.bookmark || dbChapter.bookmark,
|
||||||
read = chapter.read,
|
read = chapter.read,
|
||||||
lastPageRead = chapter.lastPageRead,
|
lastPageRead = chapter.lastPageRead,
|
||||||
|
sourceOrder = chapter.sourceOrder,
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
chapter.copyFrom(dbChapter).let {
|
chapter.copyFrom(dbChapter).let {
|
||||||
@ -252,7 +253,7 @@ class MangaRestorer(
|
|||||||
bookmark = chapter.bookmark,
|
bookmark = chapter.bookmark,
|
||||||
lastPageRead = chapter.lastPageRead,
|
lastPageRead = chapter.lastPageRead,
|
||||||
chapterNumber = null,
|
chapterNumber = null,
|
||||||
sourceOrder = null,
|
sourceOrder = if (isSync) chapter.sourceOrder else null,
|
||||||
dateFetch = null,
|
dateFetch = null,
|
||||||
dateUpload = null,
|
dateUpload = null,
|
||||||
chapterId = chapter.id,
|
chapterId = chapter.id,
|
||||||
|
@ -233,7 +233,12 @@ abstract class SyncService(
|
|||||||
localChapter != null && remoteChapter != null -> {
|
localChapter != null && remoteChapter != null -> {
|
||||||
// Use version number to decide which chapter to keep
|
// Use version number to decide which chapter to keep
|
||||||
val chosenChapter = if (localChapter.version >= remoteChapter.version) {
|
val chosenChapter = if (localChapter.version >= remoteChapter.version) {
|
||||||
localChapter
|
// If there mare more chapter on remote, local sourceOrder will need to be updated to maintain correct source order.
|
||||||
|
if (localChapters.size < remoteChapters.size) {
|
||||||
|
localChapter.copy(sourceOrder = remoteChapter.sourceOrder)
|
||||||
|
} else {
|
||||||
|
localChapter
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
remoteChapter
|
remoteChapter
|
||||||
}
|
}
|
||||||
@ -500,6 +505,7 @@ abstract class SyncService(
|
|||||||
logcat(LogPriority.DEBUG, logTag) { "Using remote saved search: ${remoteSearch.name}." }
|
logcat(LogPriority.DEBUG, logTag) { "Using remote saved search: ${remoteSearch.name}." }
|
||||||
remoteSearch
|
remoteSearch
|
||||||
}
|
}
|
||||||
|
|
||||||
else -> {
|
else -> {
|
||||||
logcat(LogPriority.DEBUG, logTag) {
|
logcat(LogPriority.DEBUG, logTag) {
|
||||||
"No saved search found for composite key: $compositeKey. Skipping."
|
"No saved search found for composite key: $compositeKey. Skipping."
|
||||||
|
Loading…
x
Reference in New Issue
Block a user