From 347aaadb4332e22ee2d2e715e1b7e172fb15b704 Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Fri, 9 Dec 2022 09:48:10 +0800 Subject: [PATCH] Resolve #500 --- .../com/hippo/ehviewer/ui/scene/HistoryScene.kt | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/HistoryScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/HistoryScene.kt index 38a0eb269..bea59d6c4 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/HistoryScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/HistoryScene.kt @@ -43,7 +43,6 @@ import com.hippo.ehviewer.client.EhUtils import com.hippo.ehviewer.client.data.GalleryInfo import com.hippo.ehviewer.dao.DownloadInfo import com.hippo.ehviewer.dao.HistoryInfo -import com.hippo.ehviewer.download.DownloadManager import com.hippo.ehviewer.download.DownloadManager.DownloadInfoListener import com.hippo.ehviewer.ui.CommonOperations import com.hippo.ehviewer.ui.GalleryActivity @@ -59,6 +58,7 @@ import kotlinx.coroutines.flow.collectLatest import kotlinx.coroutines.launch import rikka.core.res.resolveColor +@SuppressLint("NotifyDataSetChanged") class HistoryScene : ToolbarScene() { private var mRecyclerView: RecyclerView? = null private val mAdapter: HistoryAdapter by lazy { @@ -131,7 +131,7 @@ class HistoryScene : ToolbarScene() { setLiftOnScrollTargetView(recyclerView) val mFastScroller = ViewUtils.`$$`(content, R.id.fast_scroller) as FastScroller val mTip = ViewUtils.`$$`(view, R.id.tip) as TextView - ViewTransition(content, mTip) + val mViewTransition = ViewTransition(content, mTip) val resources = requireContext().resources val drawable = ContextCompat.getDrawable(requireContext(), R.drawable.big_history) drawable!!.setBounds(0, 0, drawable.intrinsicWidth, drawable.intrinsicHeight) @@ -164,6 +164,15 @@ class HistoryScene : ToolbarScene() { ) } } + viewLifecycleOwner.lifecycleScope.launch { + mAdapter.onPagesUpdatedFlow.collectLatest { + if (mAdapter.itemCount == 0) { + mViewTransition.showView(1, true) + } else { + mViewTransition.showView(0, true) + } + } + } return view }