From 52ed61af6074fb63f0de8d66e80fb64d08455ceb Mon Sep 17 00:00:00 2001 From: kunfei Date: Tue, 18 Apr 2023 10:57:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/base/BaseActivity.kt | 2 +- app/src/main/java/io/legado/app/base/BaseFragment.kt | 2 +- .../app/ui/book/searchContent/SearchContentActivity.kt | 8 ++++++++ app/src/main/java/io/legado/app/utils/ViewExtensions.kt | 6 ++++++ app/src/main/res/layout/activity_search_content.xml | 4 ++++ 5 files changed, 20 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/io/legado/app/base/BaseActivity.kt b/app/src/main/java/io/legado/app/base/BaseActivity.kt index d9014e57f..cd40bfa79 100644 --- a/app/src/main/java/io/legado/app/base/BaseActivity.kt +++ b/app/src/main/java/io/legado/app/base/BaseActivity.kt @@ -77,8 +77,8 @@ abstract class BaseActivity( findViewById(R.id.title_bar) ?.onMultiWindowModeChanged(isInMultiWindowMode, fullScreen) } - onActivityCreated(savedInstanceState) observeLiveBus() + onActivityCreated(savedInstanceState) } @RequiresApi(Build.VERSION_CODES.O) diff --git a/app/src/main/java/io/legado/app/base/BaseFragment.kt b/app/src/main/java/io/legado/app/base/BaseFragment.kt index 99797f226..8125831a3 100644 --- a/app/src/main/java/io/legado/app/base/BaseFragment.kt +++ b/app/src/main/java/io/legado/app/base/BaseFragment.kt @@ -32,8 +32,8 @@ abstract class BaseFragment(@LayoutRes layoutID: Int) : Fragment(layoutID), override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) onMultiWindowModeChanged() - onFragmentCreated(view, savedInstanceState) observeLiveBus() + onFragmentCreated(view, savedInstanceState) } abstract fun onFragmentCreated(view: View, savedInstanceState: Bundle?) diff --git a/app/src/main/java/io/legado/app/ui/book/searchContent/SearchContentActivity.kt b/app/src/main/java/io/legado/app/ui/book/searchContent/SearchContentActivity.kt index af32d5e22..4202aa8d0 100644 --- a/app/src/main/java/io/legado/app/ui/book/searchContent/SearchContentActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/searchContent/SearchContentActivity.kt @@ -7,6 +7,7 @@ import android.view.MotionEvent import android.widget.EditText import androidx.activity.viewModels import androidx.appcompat.widget.SearchView +import androidx.core.view.allViews import io.legado.app.R import io.legado.app.base.VMBaseActivity import io.legado.app.constant.AppLog @@ -119,6 +120,13 @@ class SearchContentActivity : mLayoutManager.scrollToPositionWithOffset(adapter.itemCount - 1, 0) } } + binding.tvCurrentSearchInfo.setOnClickListener { + searchView.allViews.forEach { view -> + if (view is EditText) { + view.showSoftInput() + } + } + } binding.fbStop.setOnClickListener { searchJob?.cancel() } diff --git a/app/src/main/java/io/legado/app/utils/ViewExtensions.kt b/app/src/main/java/io/legado/app/utils/ViewExtensions.kt index f965cc74f..972b34ab4 100644 --- a/app/src/main/java/io/legado/app/utils/ViewExtensions.kt +++ b/app/src/main/java/io/legado/app/utils/ViewExtensions.kt @@ -10,6 +10,7 @@ import android.os.Build import android.text.Html import android.view.View import android.view.View.* +import android.view.inputmethod.InputMethodManager import android.widget.* import androidx.annotation.ColorInt import androidx.appcompat.app.AppCompatActivity @@ -41,6 +42,11 @@ fun View.hideSoftInput() = run { inputMethodManager.hideSoftInputFromWindow(this.windowToken, 0) } +fun View.showSoftInput() = run { + requestFocus() + inputMethodManager.showSoftInput(this, InputMethodManager.RESULT_SHOWN) +} + fun View.disableAutoFill() = run { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { this.importantForAutofill = IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS diff --git a/app/src/main/res/layout/activity_search_content.xml b/app/src/main/res/layout/activity_search_content.xml index 12aa83fac..2eb097369 100644 --- a/app/src/main/res/layout/activity_search_content.xml +++ b/app/src/main/res/layout/activity_search_content.xml @@ -54,6 +54,10 @@ android:textColor="@color/primaryText" android:textSize="12sp" /> + +