diff --git a/app/src/main/java/io/legado/app/help/AppConfig.kt b/app/src/main/java/io/legado/app/help/AppConfig.kt index eab1acd6b..4189d9787 100644 --- a/app/src/main/java/io/legado/app/help/AppConfig.kt +++ b/app/src/main/java/io/legado/app/help/AppConfig.kt @@ -1,6 +1,7 @@ package io.legado.app.help import io.legado.app.App +import io.legado.app.R import io.legado.app.constant.PreferKey import io.legado.app.utils.* @@ -44,6 +45,9 @@ object AppConfig { App.INSTANCE.putPrefBoolean(PreferKey.showRss, value) } + val autoRefreshBook: Boolean + get() = App.INSTANCE.getPrefBoolean(App.INSTANCE.getString(R.string.pk_auto_refresh)) + var threadCount: Int get() = App.INSTANCE.getPrefInt(PreferKey.threadCount, 16) set(value) { diff --git a/app/src/main/java/io/legado/app/ui/main/MainViewModel.kt b/app/src/main/java/io/legado/app/ui/main/MainViewModel.kt index 6af83db54..4fe57d758 100644 --- a/app/src/main/java/io/legado/app/ui/main/MainViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/main/MainViewModel.kt @@ -15,7 +15,7 @@ import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.delay class MainViewModel(application: Application) : BaseViewModel(application) { - val updateList = arrayListOf() + val updateList = hashSetOf() fun upChapterList() { execute { diff --git a/app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfFragment.kt b/app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfFragment.kt index 9cf04d20a..9f71a4525 100644 --- a/app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/bookshelf/BookshelfFragment.kt @@ -17,6 +17,7 @@ import io.legado.app.constant.AppConst import io.legado.app.constant.EventBus import io.legado.app.constant.PreferKey import io.legado.app.data.entities.BookGroup +import io.legado.app.help.AppConfig import io.legado.app.lib.dialogs.* import io.legado.app.lib.theme.ATH import io.legado.app.lib.theme.accentColor @@ -26,7 +27,9 @@ import io.legado.app.ui.book.group.GroupManageDialog import io.legado.app.ui.book.search.SearchActivity import io.legado.app.ui.download.DownloadActivity import io.legado.app.ui.importbook.ImportBookActivity +import io.legado.app.ui.main.MainViewModel import io.legado.app.utils.* +import kotlinx.android.synthetic.main.dialog_change_source.* import kotlinx.android.synthetic.main.dialog_edit_text.view.* import kotlinx.android.synthetic.main.fragment_bookshelf.* import kotlinx.android.synthetic.main.view_tab_layout.* @@ -51,6 +54,11 @@ class BookshelfFragment : VMBaseFragment(R.layout.fragment_b setSupportToolbar(toolbar) initRecyclerView() initBookGroupData() + if (AppConfig.autoRefreshBook) { + recycler_view.postDelayed({ + getViewModelOfActivity(MainViewModel::class.java).updateList + }, 1000) + } } override fun onCompatCreateOptionsMenu(menu: Menu) { diff --git a/app/src/main/res/xml/pref_config_other.xml b/app/src/main/res/xml/pref_config_other.xml index 92cb3426a..83fea5a15 100644 --- a/app/src/main/res/xml/pref_config_other.xml +++ b/app/src/main/res/xml/pref_config_other.xml @@ -3,7 +3,7 @@ xmlns:app="http://schemas.android.com/apk/res-auto">