|
|
@@ -2,6 +2,7 @@ package io.legado.app.ui.book.import
|
|
|
|
|
|
import androidx.lifecycle.ViewModel
|
|
|
import androidx.viewbinding.ViewBinding
|
|
|
+import androidx.appcompat.widget.SearchView
|
|
|
import io.legado.app.R
|
|
|
import io.legado.app.base.VMBaseActivity
|
|
|
import io.legado.app.help.config.AppConfig
|
|
|
@@ -13,6 +14,9 @@ import kotlin.coroutines.suspendCoroutine
|
|
|
abstract class BaseImportBookActivity<VB : ViewBinding, VM : ViewModel> : VMBaseActivity<VB, VM>() {
|
|
|
|
|
|
private var localBookTreeSelectListener: ((Boolean) -> Unit)? = null
|
|
|
+ private val searchView: SearchView by lazy {
|
|
|
+ binding.titleBar.findViewById(R.id.search_view)
|
|
|
+ }
|
|
|
|
|
|
private val localBookTreeSelect = registerForActivityResult(HandleFileContract()) {
|
|
|
it.uri?.let { treeUri ->
|
|
|
@@ -51,5 +55,22 @@ abstract class BaseImportBookActivity<VB : ViewBinding, VM : ViewModel> : VMBase
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private fun initSearchView() {
|
|
|
+ searchView.applyTint(primaryTextColor)
|
|
|
+ searchView.onActionViewExpanded()
|
|
|
+ searchView.isSubmitButtonEnabled = true
|
|
|
+ searchView.queryHint = getString(R.string.screen_find)
|
|
|
+ searchView.clearFocus()
|
|
|
+ searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener {
|
|
|
+ override fun onQueryTextSubmit(query: String?): Boolean {
|
|
|
+ return false
|
|
|
+ }
|
|
|
+
|
|
|
+ override fun onQueryTextChange(newText: String?): Boolean {
|
|
|
+ viewModel.updateCallBackFlow(newText)
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
|
|
|
}
|