From 990886fc6c945ee21bb54dc305654e6be9826d01 Mon Sep 17 00:00:00 2001 From: iorgamgabriel Date: Fri, 7 Apr 2023 15:11:41 +0300 Subject: [PATCH] Bug 1825429 - Tapping on empty search result should cancel search mode. --- .../mozilla/fenix/search/SearchDialogFragment.kt | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/mozilla/fenix/search/SearchDialogFragment.kt b/app/src/main/java/org/mozilla/fenix/search/SearchDialogFragment.kt index fb3296360d..0978116f4f 100644 --- a/app/src/main/java/org/mozilla/fenix/search/SearchDialogFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/search/SearchDialogFragment.kt @@ -311,7 +311,7 @@ class SearchDialogFragment : AppCompatDialogFragment(), UserInteractionHandler { return binding.root } - @SuppressWarnings("LongMethod") + @SuppressWarnings("LongMethod", "ComplexMethod") override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) @@ -336,7 +336,17 @@ class SearchDialogFragment : AppCompatDialogFragment(), UserInteractionHandler { // When displayed above browser or home screen, dismisses keyboard when touching scrim area when (getPreviousDestination()?.destination?.id) { - R.id.browserFragment, R.id.homeFragment -> { + R.id.browserFragment -> { + binding.searchWrapper.setOnTouchListener { _, _ -> + if (toolbarView.view.url.isEmpty()) { + dismissAllowingStateLoss() + } else { + binding.searchWrapper.hideKeyboard() + } + false + } + } + R.id.homeFragment -> { binding.searchWrapper.setOnTouchListener { _, _ -> binding.searchWrapper.hideKeyboard() false