BearND has uploaded a new change for review. https://gerrit.wikimedia.org/r/169217
Change subject: Add menu entry to delete recent search entries when in search mode. ...................................................................... Add menu entry to delete recent search entries when in search mode. Change-Id: Ic6d6c5d17c99135e02e4a85845bf848c9d63654a --- A wikipedia/res/menu/menu_search.xml M wikipedia/res/values-qq/strings.xml M wikipedia/res/values/strings.xml A wikipedia/src/main/java/org/wikipedia/search/DeleteAllRecentSearchesTask.java M wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java 5 files changed, 50 insertions(+), 0 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia refs/changes/17/169217/1 diff --git a/wikipedia/res/menu/menu_search.xml b/wikipedia/res/menu/menu_search.xml new file mode 100644 index 0000000..c97b490 --- /dev/null +++ b/wikipedia/res/menu/menu_search.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8"?> + +<menu xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto"> + <item android:id="@+id/menu_clear_all_recent_searches" + android:icon="@drawable/ic_delete" + android:title="@string/menu_clear_all_recent_searches" + app:showAsAction="ifRoom" /> + +</menu> \ No newline at end of file diff --git a/wikipedia/res/values-qq/strings.xml b/wikipedia/res/values-qq/strings.xml index a765a9e..23a5e31 100644 --- a/wikipedia/res/values-qq/strings.xml +++ b/wikipedia/res/values-qq/strings.xml @@ -330,6 +330,7 @@ {{Identical|Retry}}</string> <string name="search_redirect_title">Label that tells the user that the search result is actually a redirect from another page, specified by the \"%s\" symbol.</string> <string name="search_recent_header">Label at the top of the list of recent searches that the user performed.</string> + <string name="menu_clear_all_recent_searches">Menu item to clear search history; visible when in search mode.</string> <string name="search_titles_button">Button label for searching page title matches. {{Identical|Title}}</string> <string name="search_full_button">Button label for searching the full text of pages.</string> diff --git a/wikipedia/res/values/strings.xml b/wikipedia/res/values/strings.xml index b7b8010..9f5d8be 100644 --- a/wikipedia/res/values/strings.xml +++ b/wikipedia/res/values/strings.xml @@ -246,6 +246,7 @@ <string name="search_error_retry">Retry</string> <string name="search_redirect_title">Redirect from \"%s\".</string> <string name="search_recent_header">Recent searches:</string> + <string name="menu_clear_all_recent_searches">Clear recent searches</string> <string name="search_titles_button">Titles</string> <string name="search_full_button">Within articles</string> <string name="toc_hint">Swipe left for sections, or use the menu button on the top right.</string> diff --git a/wikipedia/src/main/java/org/wikipedia/search/DeleteAllRecentSearchesTask.java b/wikipedia/src/main/java/org/wikipedia/search/DeleteAllRecentSearchesTask.java new file mode 100644 index 0000000..17c2997 --- /dev/null +++ b/wikipedia/src/main/java/org/wikipedia/search/DeleteAllRecentSearchesTask.java @@ -0,0 +1,21 @@ +package org.wikipedia.search; + +import org.wikipedia.WikipediaApp; +import org.wikipedia.concurrency.SaneAsyncTask; +import android.content.Context; + +/** AsyncTask to clear out recent search entries. */ +public class DeleteAllRecentSearchesTask extends SaneAsyncTask<Void> { + private final WikipediaApp app; + + public DeleteAllRecentSearchesTask(Context context) { + super(SINGLE_THREAD); + app = (WikipediaApp) context.getApplicationContext(); + } + + @Override + public Void performTask() throws Throwable { + app.getPersister(RecentSearch.class).deleteAll(); + return null; + } +} diff --git a/wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java b/wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java index 527f794..1fcf766 100644 --- a/wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java +++ b/wikipedia/src/main/java/org/wikipedia/search/SearchArticlesFragment.java @@ -329,6 +329,7 @@ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { if (isSearchActive) { addSearchView(menu); + addDeleteRecentSearchesMenu(menu); } } @@ -353,6 +354,22 @@ MenuItemCompat.setActionView(searchAction, searchView); } + private void addDeleteRecentSearchesMenu(Menu menu) { + MenuItem deleteAction = menu.add(0, R.id.menu_clear_all_recent_searches, Menu.NONE, getString(R.string.menu_clear_all_recent_searches)); + MenuItemCompat.setShowAsAction(deleteAction, MenuItemCompat.SHOW_AS_ACTION_IF_ROOM); + deleteAction.setIcon(R.drawable.ic_delete); + } + + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case R.id.menu_clear_all_recent_searches: + new DeleteAllRecentSearchesTask(app).execute(); + return true; + default: + return false; + } + } + /* Update any UI elements related to WP Zero */ -- To view, visit https://gerrit.wikimedia.org/r/169217 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic6d6c5d17c99135e02e4a85845bf848c9d63654a Gerrit-PatchSet: 1 Gerrit-Project: apps/android/wikipedia Gerrit-Branch: master Gerrit-Owner: BearND <[email protected]> _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
