diff --git a/app/src/main/java/com/hippo/ehviewer/ui/legacy/SelectableGalleryInfoRecyclerView.kt b/app/src/main/java/com/hippo/ehviewer/ui/legacy/SelectableGalleryInfoRecyclerView.kt index a64fa1e27..5f36598aa 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/legacy/SelectableGalleryInfoRecyclerView.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/legacy/SelectableGalleryInfoRecyclerView.kt @@ -5,7 +5,7 @@ import android.os.Parcelable import android.util.AttributeSet import android.view.View import android.widget.Checkable -import androidx.core.view.children +import androidx.core.view.forEach import androidx.recyclerview.widget.RecyclerView import kotlinx.parcelize.Parcelize @@ -24,7 +24,7 @@ class SelectableGalleryInfoRecyclerView @JvmOverloads constructor( private var checkedGid = mutableSetOf() private fun checkChild(child: View) { - val position = getChildAdapterPosition(child) + val position = getChildAdapterPosition(child).takeIf { it != NO_POSITION } ?: return val gid = gidGetter(position) ?: return setViewChecked(child, gid in checkedGid) } @@ -83,7 +83,7 @@ class SelectableGalleryInfoRecyclerView @JvmOverloads constructor( } private fun updateOnScreenCheckedViews() { - children.forEach { + forEach { checkChild(it) } } diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/DownloadsScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/DownloadsScene.kt index ba4c7f54e..ec86afea8 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/DownloadsScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/DownloadsScene.kt @@ -587,12 +587,12 @@ class DownloadsScene : 2 -> { lifecycleScope.launchIO { - // Stop - DownloadManager.stopRangeDownload(gidList!!) withUIContext { // Cancel check mode binding.recyclerView.outOfCustomChoiceMode() } + // Stop + DownloadManager.stopRangeDownload(gidList!!) } }