Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1790)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapter.java

Issue 2640333003: [Downloads UI] Implement search (Closed)
Patch Set: Explicitly handle empty downloads query Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapter.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapter.java b/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapter.java
index 5229e987822193cc0e86b26eca9eaba52335435f..ee81a15744a164a3507166888acfc6268f9af1da 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapter.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapter.java
@@ -347,6 +347,32 @@ public class DownloadHistoryAdapter extends DateDividedAdapter
mObservers.removeObserver(observer);
}
+ /**
+ * Called to perform a search. If the query is empty all items matching the current filter will
+ * be displayed.
+ * @param query The text to search for.
+ */
+ void search(String query) {
+ if (TextUtils.isEmpty(query)) {
+ filter(mFilter);
+ return;
+ }
+
+ mFilteredItems.clear();
+ mRegularDownloadItems.filter(mFilter, query, mFilteredItems);
+ mIncognitoDownloadItems.filter(mFilter, query, mFilteredItems);
+ mOfflinePageItems.filter(mFilter, query, mFilteredItems);
+ clear(false);
+ loadItems(mFilteredItems);
+ }
+
+ /**
+ * Called when a search is ended.
+ */
+ void onEndSearch() {
+ filter(mFilter);
+ }
+
private DownloadDelegate getDownloadDelegate() {
return mBackendProvider.getDownloadDelegate();
}

Powered by Google App Engine
This is Rietveld 408576698