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

Unified Diff: chrome/browser/android/enhanced_bookmarks/enhanced_bookmarks_bridge.cc

Issue 695493005: Add local search API to Enhanced Bookmark Bridge (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: nits Created 6 years, 2 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/browser/android/enhanced_bookmarks/enhanced_bookmarks_bridge.cc
diff --git a/chrome/browser/android/enhanced_bookmarks/enhanced_bookmarks_bridge.cc b/chrome/browser/android/enhanced_bookmarks/enhanced_bookmarks_bridge.cc
index ed4016aa764a1910a4c61f4883f1da126a30c0bb..02998d46630da753fb31cd4e0eb6ecc15ea12c73 100644
--- a/chrome/browser/android/enhanced_bookmarks/enhanced_bookmarks_bridge.cc
+++ b/chrome/browser/android/enhanced_bookmarks/enhanced_bookmarks_bridge.cc
@@ -16,6 +16,7 @@
#include "chrome/browser/signin/signin_manager_factory.h"
#include "chrome/common/chrome_version_info.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/common/android/bookmark_id.h"
@@ -214,6 +215,27 @@ ScopedJavaLocalRef<jobject> EnhancedBookmarksBridge::GetSearchResults(
return j_list;
}
+ScopedJavaLocalRef<jobject> EnhancedBookmarksBridge::SearchLocalResults(
+ JNIEnv* env,
+ jobject obj,
+ jstring j_query) {
Kibeom Kim (inactive) 2014/10/31 09:13:51 This function doesn't use any enhanced bookmark fe
Ian Wen 2014/10/31 17:46:14 Done.
+ DCHECK(enhanced_bookmark_model_->loaded());
+
+ ScopedJavaLocalRef<jobject> j_list =
+ Java_EnhancedBookmarksBridge_createBookmarkIdList(env);
+ std::vector<bookmarks::BookmarkMatch> results;
+ const size_t kMaxBookmarkMatches = 1000;
Kibeom Kim (inactive) 2014/10/31 09:13:51 This is quite arbitrary. Let's make it a function
Ian Wen 2014/10/31 17:46:14 Basically we have 3 options here. 1. A number that
Kibeom Kim (inactive) 2014/10/31 18:04:42 Yes I agree that it's good to do such optimization
+ enhanced_bookmark_model_->bookmark_model()->GetBookmarksMatching(
lpromero 2014/10/31 16:27:36 As per email thread on mobile-stars, this search f
Ian Wen 2014/10/31 17:46:14 The function we used can be modified if we really
+ base::android::ConvertJavaStringToUTF16(env, j_query),
+ kMaxBookmarkMatches, &results);
+ for (const bookmarks::BookmarkMatch& match : results) {
+ const BookmarkNode* node = match.node;
+ Java_EnhancedBookmarksBridge_addToBookmarkIdList(env, j_list.obj(),
+ node->id(), node->type());
+ }
+ return j_list;
+}
+
void EnhancedBookmarksBridge::OnChange(BookmarkServerService* service) {
DCHECK(enhanced_bookmark_model_->loaded());
JNIEnv* env = AttachCurrentThread();

Powered by Google App Engine
This is Rietveld 408576698