BearND has uploaded a new change for review. https://gerrit.wikimedia.org/r/180848
Change subject: Go to first suggestion on search submit ...................................................................... Go to first suggestion on search submit Bug: T78749 Change-Id: I5477a6d7fee3339febea6646ce27c4b9a88da9eb --- M wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java M wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java M wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java 3 files changed, 27 insertions(+), 3 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia refs/changes/48/180848/1 diff --git a/wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java b/wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java index 1a8eaf7..249e103 100644 --- a/wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java +++ b/wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java @@ -13,6 +13,7 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.Adapter; import android.widget.AdapterView; import android.widget.BaseAdapter; import android.widget.ImageView; @@ -233,6 +234,15 @@ }.execute(); } + public PageTitle getFirstSuggestion() { + Adapter adapter = searchResultsList.getAdapter(); + if (adapter.getCount() > 0) { + return (PageTitle) adapter.getItem(0); + } else { + return null; + } + } + private final class SearchResultAdapter extends BaseAdapter { private List<PageTitle> results; private final LayoutInflater inflater; diff --git a/wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java b/wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java index e6d2fb7..db4e4a4 100644 --- a/wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java +++ b/wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java @@ -425,10 +425,16 @@ private final SearchView.OnQueryTextListener searchQueryListener = new SearchView.OnQueryTextListener() { @Override public boolean onQueryTextSubmit(String queryText) { - if (isValidQuery(queryText)) { - navigateToTitle(queryText); + PageTitle firstSuggestion = null; + if (getActivePanel() == PANEL_TITLE_SEARCH) { + firstSuggestion = titleSearchFragment.getFirstSuggestion(); + } else if (getActivePanel() == PANEL_FULL_SEARCH) { + firstSuggestion = fullSearchFragment.getFirstSuggestion(); } - closeSearch(); + if (firstSuggestion != null) { + navigateToTitle(firstSuggestion); + closeSearch(); + } return true; } diff --git a/wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java b/wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java index 7fb5242..988211d 100644 --- a/wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java +++ b/wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java @@ -203,6 +203,14 @@ searchHandler.sendMessageDelayed(searchMessage, DELAY_MILLIS); } + public PageTitle getFirstSuggestion() { + if (adapter.getCount() > 0) { + return (PageTitle) adapter.getItem(0); + } else { + return null; + } + } + private final class SearchResultAdapter extends BaseAdapter { private List<PageTitle> results; private final LayoutInflater inflater; -- To view, visit https://gerrit.wikimedia.org/r/180848 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I5477a6d7fee3339febea6646ce27c4b9a88da9eb Gerrit-PatchSet: 1 Gerrit-Project: apps/android/wikipedia Gerrit-Branch: master Gerrit-Owner: BearND <bsitzm...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits