mirror of
https://github.com/gedoor/legado.git
synced 2024-07-06 23:47:49 +08:00
优化
This commit is contained in:
parent
a78ad09034
commit
b5670d8339
@ -99,7 +99,7 @@ class ReadBookActivity : BaseReadBookActivity(),
|
||||
private val searchContentActivity = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {
|
||||
it ?: return@registerForActivityResult
|
||||
it.data?.let { data ->
|
||||
data.getIntExtra("chapterIndex", ReadBook.durChapterIndex).let { _ ->
|
||||
data.getIntExtra("chapterIndex", ReadBook.durChapterIndex).let {
|
||||
viewModel.searchContentQuery = data.getStringExtra("query") ?: ""
|
||||
val searchResultIndex = data.getIntExtra("searchResultIndex", 0)
|
||||
isShowingSearchResult = true
|
||||
|
@ -29,12 +29,15 @@ class SearchMenu @JvmOverloads constructor(
|
||||
private val callBack: CallBack get() = activity as CallBack
|
||||
private val binding = ViewSearchMenuBinding.inflate(LayoutInflater.from(context), this, true)
|
||||
|
||||
private val menuBottomIn: Animation = AnimationUtilsSupport.loadAnimation(context, R.anim.anim_readbook_bottom_in)
|
||||
private val menuBottomOut: Animation = AnimationUtilsSupport.loadAnimation(context, R.anim.anim_readbook_bottom_out)
|
||||
private val menuBottomIn: Animation =
|
||||
AnimationUtilsSupport.loadAnimation(context, R.anim.anim_readbook_bottom_in)
|
||||
private val menuBottomOut: Animation =
|
||||
AnimationUtilsSupport.loadAnimation(context, R.anim.anim_readbook_bottom_out)
|
||||
private val bgColor: Int = context.bottomBackground
|
||||
private val textColor: Int = context.getPrimaryTextColor(ColorUtils.isColorLight(bgColor))
|
||||
private val bottomBackgroundList: ColorStateList =
|
||||
Selector.colorBuild().setDefaultColor(bgColor).setPressedColor(ColorUtils.darkenColor(bgColor)).create()
|
||||
Selector.colorBuild().setDefaultColor(bgColor)
|
||||
.setPressedColor(ColorUtils.darkenColor(bgColor)).create()
|
||||
private var onMenuOutEnd: (() -> Unit)? = null
|
||||
|
||||
private val searchResultList: MutableList<SearchResult> = mutableListOf()
|
||||
@ -104,18 +107,20 @@ class SearchMenu @JvmOverloads constructor(
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressLint("SetTextI18n")
|
||||
fun updateSearchInfo() {
|
||||
ReadBook.curTextChapter?.let {
|
||||
binding.tvCurrentSearchInfo.text = context.getString(R.string.search_content_size) + ": ${searchResultList.size} / 当前章节: ${it.title}"
|
||||
binding.tvCurrentSearchInfo.text =
|
||||
"""${context.getString(R.string.search_content_size)}: ${searchResultList.size} / 当前章节: ${it.title}"""
|
||||
}
|
||||
}
|
||||
|
||||
fun updateSearchResultIndex(updateIndex: Int) {
|
||||
lastSearchResultIndex = currentSearchResultIndex
|
||||
currentSearchResultIndex = when {
|
||||
updateIndex < 0 -> 0
|
||||
updateIndex < 0 -> 0
|
||||
updateIndex >= searchResultList.size -> searchResultList.size - 1
|
||||
else -> updateIndex
|
||||
else -> updateIndex
|
||||
}
|
||||
}
|
||||
|
||||
@ -143,13 +148,6 @@ class SearchMenu @JvmOverloads constructor(
|
||||
}
|
||||
}
|
||||
|
||||
//设置
|
||||
// llSetting.setOnClickListener {
|
||||
// runMenuOut {
|
||||
// callBack.showSearchSetting()
|
||||
// }
|
||||
// }
|
||||
|
||||
fabLeft.setOnClickListener {
|
||||
updateSearchResultIndex(currentSearchResultIndex - 1)
|
||||
callBack.navigateToSearch(searchResultList[currentSearchResultIndex])
|
||||
@ -192,8 +190,8 @@ class SearchMenu @JvmOverloads constructor(
|
||||
root.padding = 0
|
||||
when (activity?.navigationBarGravity) {
|
||||
Gravity.BOTTOM -> root.bottomPadding = navigationBarHeight
|
||||
Gravity.LEFT -> root.leftPadding = navigationBarHeight
|
||||
Gravity.RIGHT -> root.rightPadding = navigationBarHeight
|
||||
Gravity.LEFT -> root.leftPadding = navigationBarHeight
|
||||
Gravity.RIGHT -> root.rightPadding = navigationBarHeight
|
||||
}
|
||||
}
|
||||
callBack.upSystemUiVisibility()
|
||||
|
@ -14,7 +14,6 @@ import io.legado.app.utils.hexString
|
||||
class SearchContentAdapter(context: Context, val callback: Callback) :
|
||||
RecyclerAdapter<SearchResult, ItemSearchListBinding>(context) {
|
||||
|
||||
val cacheFileNames = hashSetOf<String>()
|
||||
val textColor = context.getCompatColor(R.color.primaryText).hexString.substring(2)
|
||||
val accentColor = context.accentColor.hexString.substring(2)
|
||||
|
||||
|
@ -21,7 +21,6 @@ class SearchContentViewModel(application: Application) : BaseViewModel(applicati
|
||||
var searchResultCounts = 0
|
||||
val cacheChapterNames = hashSetOf<String>()
|
||||
val searchResultList: MutableList<SearchResult> = mutableListOf()
|
||||
var selectedIndex = 0
|
||||
|
||||
fun initBook(bookUrl: String, success: () -> Unit) {
|
||||
this.bookUrl = bookUrl
|
||||
|
Loading…
Reference in New Issue
Block a user