For #2088: Use new async API to load default search engine in HomeFragment
parent
9dd9503db9
commit
4cf03be236
|
@ -82,6 +82,7 @@ import org.mozilla.fenix.onboarding.FenixOnboarding
|
|||
import org.mozilla.fenix.settings.SupportUtils
|
||||
import org.mozilla.fenix.share.ShareTab
|
||||
import org.mozilla.fenix.utils.FragmentPreDrawManager
|
||||
import org.mozilla.fenix.utils.Settings
|
||||
import org.mozilla.fenix.utils.allowUndo
|
||||
|
||||
@SuppressWarnings("TooManyFunctions", "LargeClass")
|
||||
|
@ -206,8 +207,10 @@ class HomeFragment : Fragment(), AccountObserver {
|
|||
viewLifecycleOwner.lifecycleScope.launch(Dispatchers.IO) {
|
||||
val iconSize = resources.getDimension(R.dimen.preference_icon_drawable_size).toInt()
|
||||
|
||||
val searchEngine =
|
||||
requireComponents.search.searchEngineManager.getDefaultSearchEngine(requireContext())
|
||||
val searchEngine = requireComponents.search.searchEngineManager.getDefaultSearchEngineAsync(
|
||||
requireContext(),
|
||||
Settings.getInstance(requireContext()).defaultSearchEngineName
|
||||
)
|
||||
val searchIcon = BitmapDrawable(resources, searchEngine.icon)
|
||||
searchIcon.setBounds(0, 0, iconSize, iconSize)
|
||||
|
||||
|
|
|
@ -208,7 +208,11 @@ class SearchFragment : Fragment(), BackHandler {
|
|||
// The user has the option to go to 'Shortcuts' -> 'Search engine settings' to modify the default search engine.
|
||||
// When returning from that settings screen we need to update it to account for any changes.
|
||||
val currentDefaultEngine =
|
||||
requireComponents.search.searchEngineManager.getDefaultSearchEngine(requireContext())
|
||||
requireComponents.search.searchEngineManager.getDefaultSearchEngine(
|
||||
requireContext(),
|
||||
Settings.getInstance(requireContext()).defaultSearchEngineName
|
||||
)
|
||||
|
||||
if (searchStore.state.defaultEngineSource.searchEngine != currentDefaultEngine) {
|
||||
searchStore.dispatch(
|
||||
SearchAction.SelectNewDefaultSearchEngine
|
||||
|
|
Loading…
Reference in New Issue