MangaPresenter: Fix incorrect range selection (#7709)
This commit is contained in:
parent
b4e15263db
commit
f7b11f2ce9
1 changed files with 5 additions and 5 deletions
|
@ -753,13 +753,13 @@ class MangaPresenter(
|
||||||
fromLongPress: Boolean = false,
|
fromLongPress: Boolean = false,
|
||||||
) {
|
) {
|
||||||
updateSuccessState { successState ->
|
updateSuccessState { successState ->
|
||||||
val modifiedIndex = successState.chapters.indexOfFirst { it.chapter.id == item.chapter.id }
|
val newChapters = successState.processedChapters.toMutableList().apply {
|
||||||
if (modifiedIndex < 0) return@updateSuccessState successState
|
val modifiedIndex = successState.processedChapters.indexOfFirst { it == item }
|
||||||
|
if (modifiedIndex < 0) return@apply
|
||||||
|
|
||||||
val oldItem = successState.chapters[modifiedIndex]
|
val oldItem = get(modifiedIndex)
|
||||||
if ((oldItem.selected && selected) || (!oldItem.selected && !selected)) return@updateSuccessState successState
|
if ((oldItem.selected && selected) || (!oldItem.selected && !selected)) return@apply
|
||||||
|
|
||||||
val newChapters = successState.chapters.toMutableList().apply {
|
|
||||||
val firstSelection = none { it.selected }
|
val firstSelection = none { it.selected }
|
||||||
var newItem = removeAt(modifiedIndex)
|
var newItem = removeAt(modifiedIndex)
|
||||||
add(modifiedIndex, newItem.copy(selected = selected))
|
add(modifiedIndex, newItem.copy(selected = selected))
|
||||||
|
|
Reference in a new issue