From 97bb486f6769bb3e1489341e8335adf4ab66b54b Mon Sep 17 00:00:00 2001 From: Nikolay Pultsin Date: Sat, 29 Jan 2011 17:37:33 +0000 Subject: [PATCH] BookmarksActivity search code cleanup: separate search activity has been removed Conflicts: AndroidManifest.xml AndroidManifest.xml.pattern src/org/geometerplus/android/fbreader/BookmarksActivity.java --- .../android/fbreader/BookmarksActivity.java | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/org/geometerplus/android/fbreader/BookmarksActivity.java b/src/org/geometerplus/android/fbreader/BookmarksActivity.java index a7236d63b..845f7ab3a 100644 --- a/src/org/geometerplus/android/fbreader/BookmarksActivity.java +++ b/src/org/geometerplus/android/fbreader/BookmarksActivity.java @@ -103,6 +103,43 @@ public class BookmarksActivity extends TabActivity implements MenuItem.OnMenuIte findViewById(R.id.search_results).setVisibility(View.GONE); } + public List runSearch(String pattern) { + final FBReaderApp fbreader = (FBReaderApp)FBReaderApp.Instance(); + fbreader.BookmarkSearchPatternOption.setValue(pattern); + + final LinkedList bookmarks = new LinkedList(); + pattern = pattern.toLowerCase(); + for (Bookmark bookmark : BookmarksActivity.Instance.AllBooksBookmarks) { + if (ZLMiscUtil.matchesIgnoreCase(bookmark.getText(), pattern)) { + bookmarks.add(bookmark); + } + } + return bookmarks; + } + + @Override + protected void onNewIntent(Intent intent) { + if (!Intent.ACTION_SEARCH.equals(intent.getAction())) { + return; + } + String pattern = intent.getStringExtra(SearchManager.QUERY); + final FBReaderApp fbreader = (FBReaderApp)FBReaderApp.Instance(); + fbreader.BookmarkSearchPatternOption.setValue(pattern); + + final LinkedList bookmarks = new LinkedList(); + pattern = pattern.toLowerCase(); + for (Bookmark b : BookmarksActivity.Instance.AllBooksBookmarks) { + if (ZLMiscUtil.matchesIgnoreCase(b.getText(), pattern)) { + bookmarks.add(b); + } + } + if (!bookmarks.isEmpty()) { + showSearchResultsTab(bookmarks); + } else { + UIUtil.showErrorMessage(this, "bookmarkNotFound"); + } + } + @Override protected void onNewIntent(Intent intent) { if (!Intent.ACTION_SEARCH.equals(intent.getAction())) {