diff --git a/app/src/main/java/org/mozilla/fenix/search/SearchController.kt b/app/src/main/java/org/mozilla/fenix/search/SearchController.kt index 66a440a342..3a21ff54a9 100644 --- a/app/src/main/java/org/mozilla/fenix/search/SearchController.kt +++ b/app/src/main/java/org/mozilla/fenix/search/SearchController.kt @@ -81,11 +81,13 @@ class DefaultSearchController( override fun handleTextChanged(text: String) { // Display the search shortcuts on each entry of the search fragment (see #5308) val textMatchesCurrentUrl = store.state.session?.url ?: "" == text + val textMatchesCurrentSearch = store.state.session?.searchTerms ?: "" == text store.dispatch(SearchFragmentAction.UpdateQuery(text)) store.dispatch( SearchFragmentAction.ShowSearchShortcutEnginePicker( - (textMatchesCurrentUrl || text.isEmpty()) && context.settings().shouldShowSearchShortcuts + (textMatchesCurrentUrl || textMatchesCurrentSearch || text.isEmpty()) && + context.settings().shouldShowSearchShortcuts ) ) store.dispatch( diff --git a/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarView.kt b/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarView.kt index a73ee1f4d6..ec9f5189eb 100644 --- a/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarView.kt +++ b/app/src/main/java/org/mozilla/fenix/search/toolbar/ToolbarView.kt @@ -159,6 +159,10 @@ class ToolbarView( view.setSearchTerms(searchState.session?.searchTerms.orEmpty()) } + // We must trigger an onTextChanged so when search terms are set when transitioning to `editMode` + // we have the most up to date text + interactor.onTextChanged(view.url.toString()) + view.editMode() isInitialized = true }