From a7bfa4bf17e9cbbe262dfe76d018ace3a52e31c2 Mon Sep 17 00:00:00 2001 From: HapeLee <1321903405@qq.com> Date: Mon, 20 Oct 2025 23:16:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=8F=91=E7=8E=B0=E7=AD=9B?= =?UTF-8?q?=E9=80=89=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../legato/kazusa/ui/main/explore/ExploreFragment.kt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/io/legato/kazusa/ui/main/explore/ExploreFragment.kt b/app/src/main/java/io/legato/kazusa/ui/main/explore/ExploreFragment.kt index 703d029ab..26bc54a00 100644 --- a/app/src/main/java/io/legato/kazusa/ui/main/explore/ExploreFragment.kt +++ b/app/src/main/java/io/legato/kazusa/ui/main/explore/ExploreFragment.kt @@ -74,6 +74,7 @@ class ExploreFragment() : VMBaseFragment(R.layout.fragment_exp private val groups = linkedSetOf() private var exploreFlowJob: Job? = null private var groupsMenu: SubMenu? = null + private var currentSearchKey: String? = null override fun onFragmentCreated(view: View, savedInstanceState: Bundle?) { setSupportToolbar(binding.topBar) @@ -89,8 +90,8 @@ class ExploreFragment() : VMBaseFragment(R.layout.fragment_exp } private fun initSearchView() { + searchView.setupWithSearchBar(searchBar) searchView.hint = getString(R.string.screen_find) - searchBar.setOnClickListener { searchView.show() if (searchView.text.isEmpty()) { @@ -98,6 +99,12 @@ class ExploreFragment() : VMBaseFragment(R.layout.fragment_exp } } + searchView.addTransitionListener { _, _, newState -> + if (newState == SearchView.TransitionState.HIDDEN) { + searchBar.setText(searchView.text) + } + } + searchView.editText.setOnEditorActionListener { _, actionId, _ -> if (actionId == EditorInfo.IME_ACTION_SEARCH) { val query = searchView.text.toString() @@ -114,7 +121,6 @@ class ExploreFragment() : VMBaseFragment(R.layout.fragment_exp searchView.editText.doAfterTextChanged { editable -> editable?.let { upExploreData(it.toString()) - if (it.isEmpty()) { searchBar.hint = getString(R.string.screen_find) }