|
|
|
@ -40,6 +40,7 @@ import androidx.navigation.fragment.navArgs
|
|
|
|
|
import kotlinx.coroutines.flow.collect
|
|
|
|
|
import kotlinx.coroutines.flow.map
|
|
|
|
|
import kotlinx.coroutines.launch
|
|
|
|
|
import mozilla.components.browser.domains.autocomplete.ShippedDomainsProvider
|
|
|
|
|
import mozilla.components.browser.state.search.SearchEngine
|
|
|
|
|
import mozilla.components.browser.state.state.searchEngines
|
|
|
|
|
import mozilla.components.browser.toolbar.BrowserToolbar
|
|
|
|
@ -49,6 +50,7 @@ import mozilla.components.concept.menu.candidate.TextMenuCandidate
|
|
|
|
|
import mozilla.components.concept.storage.HistoryStorage
|
|
|
|
|
import mozilla.components.concept.toolbar.Toolbar
|
|
|
|
|
import mozilla.components.feature.qr.QrFeature
|
|
|
|
|
import mozilla.components.feature.toolbar.ToolbarAutocompleteFeature
|
|
|
|
|
import mozilla.components.lib.state.ext.consumeFlow
|
|
|
|
|
import mozilla.components.lib.state.ext.consumeFrom
|
|
|
|
|
import mozilla.components.service.glean.private.NoExtras
|
|
|
|
@ -204,15 +206,30 @@ class SearchDialogFragment : AppCompatDialogFragment(), UserInteractionHandler {
|
|
|
|
|
requireContext(),
|
|
|
|
|
requireContext().settings(),
|
|
|
|
|
interactor,
|
|
|
|
|
historyStorageProvider(),
|
|
|
|
|
isPrivate,
|
|
|
|
|
binding.toolbar,
|
|
|
|
|
requireComponents.core.engine,
|
|
|
|
|
fromHomeFragment
|
|
|
|
|
).also {
|
|
|
|
|
inlineAutocompleteEditText = it.view.findViewById(R.id.mozac_browser_toolbar_edit_url_view)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (requireContext().settings().shouldAutocompleteInAwesomebar) {
|
|
|
|
|
val engineForSpeculativeConnects = if (!isPrivate) requireComponents.core.engine else null
|
|
|
|
|
|
|
|
|
|
ToolbarAutocompleteFeature(
|
|
|
|
|
binding.toolbar,
|
|
|
|
|
engineForSpeculativeConnects,
|
|
|
|
|
{ store.state.searchEngineSource.searchEngine?.type != SearchEngine.Type.APPLICATION }
|
|
|
|
|
).apply {
|
|
|
|
|
addDomainProvider(
|
|
|
|
|
ShippedDomainsProvider().also { shippedDomainsProvider ->
|
|
|
|
|
shippedDomainsProvider.initialize(requireContext())
|
|
|
|
|
}
|
|
|
|
|
)
|
|
|
|
|
historyStorageProvider()?.also(::addHistoryStorageProvider)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
val awesomeBar = binding.awesomeBar
|
|
|
|
|
|
|
|
|
|
awesomeBarView = AwesomeBarView(
|
|
|
|
|