diff --git a/app/src/main/kotlin/com/hippo/ehviewer/EhDB.kt b/app/src/main/kotlin/com/hippo/ehviewer/EhDB.kt index 404289f16..d7a293d4a 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/EhDB.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/EhDB.kt @@ -38,13 +38,8 @@ import splitties.arch.room.roomDb object EhDB { private val db = roomDb("eh.db") - private suspend fun putGalleryInfo(galleryInfo: BaseGalleryInfo, update: Boolean = false) { - val dao = db.galleryDao() - if (update) { - dao.upsert(galleryInfo) - } else { - dao.insertOrIgnore(galleryInfo) - } + private suspend fun putGalleryInfo(galleryInfo: BaseGalleryInfo) { + db.galleryDao().upsert(galleryInfo) } private suspend fun deleteGalleryInfo(galleryInfo: BaseGalleryInfo) { @@ -195,8 +190,8 @@ object EhDB { fun searchLocalFav(keyword: String) = db.localFavoritesDao().joinListLazy("%$keyword%") - suspend fun putHistoryInfo(galleryInfo: BaseGalleryInfo, updateGalleryInfo: Boolean = false) { - putGalleryInfo(galleryInfo, updateGalleryInfo) + suspend fun putHistoryInfo(galleryInfo: BaseGalleryInfo) { + putGalleryInfo(galleryInfo) db.historyDao().upsert(HistoryInfo(galleryInfo.gid)) } diff --git a/app/src/main/kotlin/com/hippo/ehviewer/dao/GalleryDao.kt b/app/src/main/kotlin/com/hippo/ehviewer/dao/GalleryDao.kt index ba1433beb..000eb7477 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/dao/GalleryDao.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/dao/GalleryDao.kt @@ -17,9 +17,6 @@ interface GalleryDao { @Query("SELECT * FROM GALLERIES") suspend fun list(): List - @Insert(onConflict = OnConflictStrategy.IGNORE) - suspend fun insertOrIgnore(galleryInfo: BaseGalleryInfo) - @Insert(onConflict = OnConflictStrategy.IGNORE) suspend fun insertOrIgnore(galleryInfoList: List) diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/legacy/FastScroller.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/legacy/FastScroller.kt index ffe5dc1be..6152b8016 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/legacy/FastScroller.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/legacy/FastScroller.kt @@ -331,6 +331,6 @@ class FastScroller : View { private const val INVALID = -1 private const val SCROLL_BAR_FADE_DURATION = 500 private const val SCROLL_BAR_DELAY = 1000 - private const val MIN_HANDLER_HEIGHT_DP = 32 + private const val MIN_HANDLER_HEIGHT_DP = 48 } } diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/FavoritesScene.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/FavoritesScene.kt index 18c94d8f3..bd9d50b89 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/FavoritesScene.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/FavoritesScene.kt @@ -133,7 +133,7 @@ class VMStorage : ViewModel() { } }.flow.cachedIn(viewModelScope) - private val localFavDataFlow = Pager(PagingConfig(20, enablePlaceholders = false, jumpThreshold = 40)) { + private val localFavDataFlow = Pager(PagingConfig(20, jumpThreshold = 40)) { val keyword = urlBuilder.keyword if (keyword.isNullOrBlank()) { EhDB.localFavLazyList diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt index 4e9d89b49..4613de161 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt @@ -292,10 +292,7 @@ fun GalleryDetailScreen(args: GalleryDetailScreenArgs, navigator: NavController) } } galleryInfo?.let { - // Don't update gallery info in database if previous destination is favorites, - // since it will invalidate local favorites PagingSource and lose scroll state - val previousDestinationId = navigator.previousBackStackEntry?.destination?.id - EhDB.putHistoryInfo(it.findBaseInfo(), previousDestinationId != R.id.nav_favourite) + EhDB.putHistoryInfo(it.findBaseInfo()) } } }