Chromium Code Reviews| Index: chrome/browser/android/bookmarks/bookmarks_bridge.cc |
| diff --git a/chrome/browser/android/bookmarks/bookmarks_bridge.cc b/chrome/browser/android/bookmarks/bookmarks_bridge.cc |
| index 9ab94fed75ea79440756ce9c8ba5729a9eb3656c..60c7cd646fb124c20669191b87b7c872898114e2 100644 |
| --- a/chrome/browser/android/bookmarks/bookmarks_bridge.cc |
| +++ b/chrome/browser/android/bookmarks/bookmarks_bridge.cc |
| @@ -20,6 +20,7 @@ |
| #include "chrome/browser/undo/bookmark_undo_service_factory.h" |
| #include "chrome/browser/undo/undo_manager.h" |
| #include "chrome/common/pref_names.h" |
| +#include "components/bookmarks/browser/bookmark_match.h" |
| #include "components/bookmarks/browser/bookmark_model.h" |
| #include "components/bookmarks/browser/bookmark_utils.h" |
| #include "components/bookmarks/browser/scoped_group_bookmark_actions.h" |
| @@ -653,6 +654,27 @@ void BookmarksBridge::MoveBookmark(JNIEnv* env, |
| bookmark_model_->Move(node, new_parent_node, index); |
| } |
| +ScopedJavaLocalRef<jobject> BookmarksBridge::SearchLocalResults( |
| + JNIEnv* env, |
| + jobject obj, |
| + jstring j_query) { |
| + DCHECK(bookmark_model_->loaded()); |
| + |
| + ScopedJavaLocalRef<jobject> j_list = |
| + Java_BookmarksBridge_createBookmarkIdList(env); |
| + std::vector<bookmarks::BookmarkMatch> results; |
| + const size_t kMaxBookmarkMatches = 1000; |
| + bookmark_model_->GetBookmarksMatching( |
| + base::android::ConvertJavaStringToUTF16(env, j_query), |
| + kMaxBookmarkMatches, &results); |
| + for (const bookmarks::BookmarkMatch& match : results) { |
| + const BookmarkNode* node = match.node; |
| + Java_BookmarksBridge_addToBookmarkIdList(env, j_list.obj(), |
| + node->id(), node->type()); |
|
Kibeom Kim (inactive)
2014/10/31 18:04:42
nit: indent fix?
Ian Wen
2014/10/31 20:31:23
Done.
|
| + } |
| + return j_list; |
| +} |
| + |
| ScopedJavaLocalRef<jobject> BookmarksBridge::AddBookmark( |
| JNIEnv* env, |
| jobject obj, |