diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/main/ui/MainActivity.kt b/app/src/main/kotlin/org/koitharu/kotatsu/main/ui/MainActivity.kt index eff30a774..0a02b33d2 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/main/ui/MainActivity.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/main/ui/MainActivity.kt @@ -131,6 +131,12 @@ class MainActivity : BaseActivity(), AppBarOwner, BottomNav onBackPressedDispatcher.addCallback(exitCallback) onBackPressedDispatcher.addCallback(navigationDelegate) + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { + val legacySearchCallback = SearchViewLegacyBackCallback(viewBinding.searchView) + viewBinding.searchView.addTransitionListener(legacySearchCallback) + onBackPressedDispatcher.addCallback(legacySearchCallback) + } + if (savedInstanceState == null) { onFirstStart() } diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/main/ui/SearchViewLegacyBackCallback.kt b/app/src/main/kotlin/org/koitharu/kotatsu/main/ui/SearchViewLegacyBackCallback.kt new file mode 100644 index 000000000..bbd62b033 --- /dev/null +++ b/app/src/main/kotlin/org/koitharu/kotatsu/main/ui/SearchViewLegacyBackCallback.kt @@ -0,0 +1,24 @@ +package org.koitharu.kotatsu.main.ui + +import android.os.Build +import androidx.activity.OnBackPressedCallback +import androidx.annotation.DeprecatedSinceApi +import com.google.android.material.search.SearchView + +@DeprecatedSinceApi(Build.VERSION_CODES.TIRAMISU) +class SearchViewLegacyBackCallback( + private val searchView: SearchView +) : OnBackPressedCallback(searchView.isShowing), SearchView.TransitionListener { + + override fun handleOnBackPressed() { + searchView.hide() + } + + override fun onStateChanged( + searchView: SearchView, + previousState: SearchView.TransitionState, + newState: SearchView.TransitionState + ) { + isEnabled = newState >= SearchView.TransitionState.SHOWING + } +} diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/reader/ui/ReaderActivity.kt b/app/src/main/kotlin/org/koitharu/kotatsu/reader/ui/ReaderActivity.kt index 2e1818fa7..9a522da11 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/reader/ui/ReaderActivity.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/reader/ui/ReaderActivity.kt @@ -351,11 +351,11 @@ class ReaderActivity : override fun onApplyWindowInsets(v: View, insets: WindowInsetsCompat): WindowInsetsCompat { gestureInsets = insets.getInsets(WindowInsetsCompat.Type.systemGestures()) val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()) - viewBinding.appbarTop.updatePadding( - top = systemBars.top, - right = systemBars.right, - left = systemBars.left, - ) + viewBinding.toolbar.updateLayoutParams { + topMargin = systemBars.top + rightMargin = systemBars.right + leftMargin = systemBars.left + } if (viewBinding.toolbarDocked != null) { viewBinding.actionsView.updateLayoutParams { bottomMargin = systemBars.bottom