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

Reply via email to