diff --git a/app/src/main/java/io/legado/app/ui/book/import/BaseImportBookActivity.kt b/app/src/main/java/io/legado/app/ui/book/import/BaseImportBookActivity.kt index ee12dfb06..534df629d 100644 --- a/app/src/main/java/io/legado/app/ui/book/import/BaseImportBookActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/import/BaseImportBookActivity.kt @@ -1,17 +1,22 @@ package io.legado.app.ui.book.import -import androidx.lifecycle.ViewModel -import androidx.viewbinding.ViewBinding import androidx.appcompat.widget.SearchView +import androidx.lifecycle.ViewModel import io.legado.app.R import io.legado.app.base.VMBaseActivity +import io.legado.app.databinding.ActivityImportBookBinding import io.legado.app.help.config.AppConfig import io.legado.app.lib.dialogs.alert +import io.legado.app.lib.theme.primaryTextColor import io.legado.app.ui.document.HandleFileContract +import io.legado.app.utils.applyTint +import io.legado.app.utils.viewbindingdelegate.viewBinding import kotlin.coroutines.resume import kotlin.coroutines.suspendCoroutine -abstract class BaseImportBookActivity : VMBaseActivity() { +abstract class BaseImportBookActivity : VMBaseActivity() { + + override val binding by viewBinding(ActivityImportBookBinding::inflate) private var localBookTreeSelectListener: ((Boolean) -> Unit)? = null private val searchView: SearchView by lazy { @@ -55,6 +60,8 @@ abstract class BaseImportBookActivity : VMBase } } + abstract fun onSearchTextChange(newText: String?) + private fun initSearchView() { searchView.applyTint(primaryTextColor) searchView.onActionViewExpanded() @@ -67,7 +74,7 @@ abstract class BaseImportBookActivity : VMBase } override fun onQueryTextChange(newText: String?): Boolean { - viewModel.updateCallBackFlow(newText) + onSearchTextChange(newText) return false } }) diff --git a/app/src/main/java/io/legado/app/ui/book/import/local/ImportBookActivity.kt b/app/src/main/java/io/legado/app/ui/book/import/local/ImportBookActivity.kt index 627108a70..b3397a179 100644 --- a/app/src/main/java/io/legado/app/ui/book/import/local/ImportBookActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/import/local/ImportBookActivity.kt @@ -13,7 +13,6 @@ import io.legado.app.R import io.legado.app.constant.AppConst import io.legado.app.constant.PreferKey import io.legado.app.data.appDb -import io.legado.app.databinding.ActivityImportBookBinding import io.legado.app.databinding.DialogEditTextBinding import io.legado.app.help.config.AppConfig import io.legado.app.lib.dialogs.alert @@ -24,7 +23,6 @@ import io.legado.app.ui.book.import.BaseImportBookActivity import io.legado.app.ui.document.HandleFileContract import io.legado.app.ui.widget.SelectActionBar import io.legado.app.utils.* -import io.legado.app.utils.viewbindingdelegate.viewBinding import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.Job import kotlinx.coroutines.flow.conflate @@ -34,12 +32,11 @@ import java.io.File /** * 导入本地书籍界面 */ -class ImportBookActivity : BaseImportBookActivity(), +class ImportBookActivity : BaseImportBookActivity(), PopupMenu.OnMenuItemClickListener, ImportBookAdapter.CallBack, SelectActionBar.CallBack { - override val binding by viewBinding(ActivityImportBookBinding::inflate) override val viewModel by viewModels() private val adapter by lazy { ImportBookAdapter(this, this) } private var scanDocJob: Job? = null @@ -286,6 +283,10 @@ class ImportBookActivity : BaseImportBookActivity(), +class RemoteBookActivity : BaseImportBookActivity(), RemoteBookAdapter.CallBack, SelectActionBar.CallBack, ServersDialog.Callback { - override val binding by viewBinding(ActivityImportBookBinding::inflate) + override val viewModel by viewModels() private val adapter by lazy { RemoteBookAdapter(this, this) } private var groupMenu: SubMenu? = null @@ -186,6 +184,10 @@ class RemoteBookActivity : BaseImportBookActivity