From d4c83f96681eaf20d173e3bd35b2d88f1f099782 Mon Sep 17 00:00:00 2001 From: Yeon Taek Jeong Date: Wed, 14 Aug 2019 17:04:57 -0700 Subject: [PATCH] For #4736: Display search shortcuts only from home or search widget --- app/src/main/java/org/mozilla/fenix/HomeActivity.kt | 2 +- app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt | 4 ++-- .../main/java/org/mozilla/fenix/search/SearchFragment.kt | 6 +++++- app/src/main/res/navigation/nav_graph.xml | 6 +++++- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/org/mozilla/fenix/HomeActivity.kt b/app/src/main/java/org/mozilla/fenix/HomeActivity.kt index fbd918085..4b2cfaa7f 100644 --- a/app/src/main/java/org/mozilla/fenix/HomeActivity.kt +++ b/app/src/main/java/org/mozilla/fenix/HomeActivity.kt @@ -192,7 +192,7 @@ open class HomeActivity : AppCompatActivity(), ShareFragment.TabsSharedCallback } else if (intent?.extras?.getBoolean(OPEN_TO_SEARCH) == true) { this.intent.putExtra(OPEN_TO_SEARCH, false) components.analytics.metrics.track(Event.SearchWidgetNewTabPressed) - navHost.navController.nav(null, NavGraphDirections.actionGlobalSearch(null)) + navHost.navController.nav(null, NavGraphDirections.actionGlobalSearch(null, true)) return } else if (intent?.scheme == "fenix") { intent.data?.let { handleDeepLink(it) } diff --git a/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt b/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt index 5fd9f3c34..994237eba 100644 --- a/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt @@ -245,7 +245,7 @@ class HomeFragment : Fragment(), AccountObserver { view.toolbar_wrapper.setOnClickListener { invokePendingDeleteJobs() onboarding.finish() - val directions = HomeFragmentDirections.actionHomeFragmentToSearchFragment(null) + val directions = HomeFragmentDirections.actionHomeFragmentToSearchFragment(null, true) val extras = FragmentNavigator.Extras.Builder() .addSharedElement(toolbar_wrapper, "toolbar_wrapper_transition") @@ -396,7 +396,7 @@ class HomeFragment : Fragment(), AccountObserver { } is TabAction.Add -> { invokePendingDeleteJobs() - val directions = HomeFragmentDirections.actionHomeFragmentToSearchFragment(null) + val directions = HomeFragmentDirections.actionHomeFragmentToSearchFragment(null, true) nav(R.id.homeFragment, directions) } is TabAction.ShareTabs -> { diff --git a/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt b/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt index 372cd034b..52c86eda8 100644 --- a/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt @@ -74,6 +74,10 @@ class SearchFragment : Fragment(), BackHandler { ?.let { it.sessionId } ?.let(requireComponents.core.sessionManager::findSessionById) + val displayShortcutEnginePicker = arguments + ?.let(SearchFragmentArgs.Companion::fromBundle) + ?.let { it.showShortcutEnginePicker } ?: false + val view = inflater.inflate(R.layout.fragment_search, container, false) val url = session?.url ?: "" val currentSearchEngine = SearchEngineSource.Default( @@ -84,7 +88,7 @@ class SearchFragment : Fragment(), BackHandler { SearchStore( SearchState( query = url, - showShortcutEnginePicker = true, + showShortcutEnginePicker = displayShortcutEnginePicker, searchEngineSource = currentSearchEngine, defaultEngineSource = currentSearchEngine, showSuggestions = Settings.getInstance(requireContext()).showSearchSuggestions, diff --git a/app/src/main/res/navigation/nav_graph.xml b/app/src/main/res/navigation/nav_graph.xml index 40ff313ff..ab5092ae9 100644 --- a/app/src/main/res/navigation/nav_graph.xml +++ b/app/src/main/res/navigation/nav_graph.xml @@ -15,7 +15,7 @@ android:id="@+id/action_global_search" app:destination="@id/searchFragment" app:popUpTo="@id/nav_graph" - app:popUpToInclusive="true"/> + app:popUpToInclusive="true" /> +