Bug 1170824 - Hide search engine bar if no non-primary search engine is available. r=mcomella

This commit is contained in:
Sebastian Kaspari 2015-06-02 17:19:58 -07:00
parent 1294c29264
commit 4073074eb6

View File

@ -345,9 +345,7 @@ public class BrowserSearch extends HomeFragment
// If the view backed by this Fragment is being recreated, we will not receive
// a new search engine data event so refresh the new search engine bar's data
// & Views with the data we have.
mSearchEngineBar.setSearchEngines(
mSearchEngines.subList(getPrimaryEngineCount(), mSearchEngines.size())
);
updateSearchEngineBar();
mSearchEngineBar.setOnSearchBarClickListener(this);
}
@ -586,9 +584,7 @@ public class BrowserSearch extends HomeFragment
mAdapter.notifyDataSetChanged();
}
mSearchEngineBar.setSearchEngines(
mSearchEngines.subList(getPrimaryEngineCount(), mSearchEngines.size())
);
updateSearchEngineBar();
// Show suggestions opt-in prompt only if suggestions are not enabled yet,
// user hasn't been prompted and we're not on a private browsing tab.
@ -602,6 +598,19 @@ public class BrowserSearch extends HomeFragment
filterSuggestions();
}
private void updateSearchEngineBar() {
final int primaryEngineCount = getPrimaryEngineCount();
if (primaryEngineCount < mSearchEngines.size()) {
mSearchEngineBar.setSearchEngines(
mSearchEngines.subList(primaryEngineCount, mSearchEngines.size())
);
mSearchEngineBar.setVisibility(View.VISIBLE);
} else {
mSearchEngineBar.setVisibility(View.GONE);
}
}
@Override
public void onSearchBarClickListener(final SearchEngine searchEngine) {
Telemetry.sendUIEvent(TelemetryContract.Event.LOAD_URL, TelemetryContract.Method.LIST_ITEM,