OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/android/bookmarks/bookmark_bridge.h" | 5 #include "chrome/browser/android/bookmarks/bookmark_bridge.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include "base/android/jni_array.h" | 10 #include "base/android/jni_array.h" |
11 #include "base/android/jni_string.h" | 11 #include "base/android/jni_string.h" |
12 #include "base/containers/stack_container.h" | 12 #include "base/containers/stack_container.h" |
13 #include "base/i18n/string_compare.h" | 13 #include "base/i18n/string_compare.h" |
14 #include "base/memory/ptr_util.h" | 14 #include "base/memory/ptr_util.h" |
15 #include "chrome/browser/bookmarks/bookmark_model_factory.h" | 15 #include "chrome/browser/bookmarks/bookmark_model_factory.h" |
16 #include "chrome/browser/bookmarks/managed_bookmark_service_factory.h" | 16 #include "chrome/browser/bookmarks/managed_bookmark_service_factory.h" |
17 #include "chrome/browser/profiles/incognito_helpers.h" | 17 #include "chrome/browser/profiles/incognito_helpers.h" |
18 #include "chrome/browser/profiles/profile.h" | 18 #include "chrome/browser/profiles/profile.h" |
19 #include "chrome/browser/profiles/profile_android.h" | 19 #include "chrome/browser/profiles/profile_android.h" |
20 #include "chrome/browser/signin/signin_manager_factory.h" | 20 #include "chrome/browser/signin/signin_manager_factory.h" |
21 #include "chrome/browser/undo/bookmark_undo_service_factory.h" | 21 #include "chrome/browser/undo/bookmark_undo_service_factory.h" |
22 #include "components/bookmarks/browser/bookmark_match.h" | |
23 #include "components/bookmarks/browser/bookmark_model.h" | 22 #include "components/bookmarks/browser/bookmark_model.h" |
24 #include "components/bookmarks/browser/bookmark_utils.h" | 23 #include "components/bookmarks/browser/bookmark_utils.h" |
25 #include "components/bookmarks/browser/scoped_group_bookmark_actions.h" | 24 #include "components/bookmarks/browser/scoped_group_bookmark_actions.h" |
| 25 #include "components/bookmarks/browser/titled_url_match.h" |
26 #include "components/bookmarks/common/android/bookmark_type.h" | 26 #include "components/bookmarks/common/android/bookmark_type.h" |
27 #include "components/bookmarks/common/bookmark_pref_names.h" | 27 #include "components/bookmarks/common/bookmark_pref_names.h" |
28 #include "components/bookmarks/managed/managed_bookmark_service.h" | 28 #include "components/bookmarks/managed/managed_bookmark_service.h" |
29 #include "components/prefs/pref_service.h" | 29 #include "components/prefs/pref_service.h" |
30 #include "components/query_parser/query_parser.h" | 30 #include "components/query_parser/query_parser.h" |
31 #include "components/signin/core/browser/signin_manager.h" | 31 #include "components/signin/core/browser/signin_manager.h" |
32 #include "components/undo/bookmark_undo_service.h" | 32 #include "components/undo/bookmark_undo_service.h" |
33 #include "components/undo/undo_manager.h" | 33 #include "components/undo/undo_manager.h" |
34 #include "content/public/browser/browser_thread.h" | 34 #include "content/public/browser/browser_thread.h" |
35 #include "jni/BookmarkBridge_jni.h" | 35 #include "jni/BookmarkBridge_jni.h" |
(...skipping 543 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
579 env, j_callback_obj, folder_id_obj, j_result_obj); | 579 env, j_callback_obj, folder_id_obj, j_result_obj); |
580 } | 580 } |
581 | 581 |
582 void BookmarkBridge::SearchBookmarks(JNIEnv* env, | 582 void BookmarkBridge::SearchBookmarks(JNIEnv* env, |
583 const JavaParamRef<jobject>& obj, | 583 const JavaParamRef<jobject>& obj, |
584 const JavaParamRef<jobject>& j_list, | 584 const JavaParamRef<jobject>& j_list, |
585 const JavaParamRef<jstring>& j_query, | 585 const JavaParamRef<jstring>& j_query, |
586 jint max_results) { | 586 jint max_results) { |
587 DCHECK(bookmark_model_->loaded()); | 587 DCHECK(bookmark_model_->loaded()); |
588 | 588 |
589 std::vector<bookmarks::BookmarkMatch> results; | 589 std::vector<bookmarks::TitledUrlMatch> results; |
590 bookmark_model_->GetBookmarksMatching( | 590 bookmark_model_->GetBookmarksMatching( |
591 base::android::ConvertJavaStringToUTF16(env, j_query), | 591 base::android::ConvertJavaStringToUTF16(env, j_query), |
592 max_results, | 592 max_results, |
593 query_parser::MatchingAlgorithm::ALWAYS_PREFIX_SEARCH, | 593 query_parser::MatchingAlgorithm::ALWAYS_PREFIX_SEARCH, |
594 &results); | 594 &results); |
595 for (const bookmarks::BookmarkMatch& match : results) { | 595 for (const bookmarks::TitledUrlMatch& match : results) { |
596 const BookmarkNode* node = static_cast<const BookmarkNode*>(match.node); | 596 const BookmarkNode* node = static_cast<const BookmarkNode*>(match.node); |
597 | 597 |
598 std::vector<int> title_match_start_positions; | 598 std::vector<int> title_match_start_positions; |
599 std::vector<int> title_match_end_positions; | 599 std::vector<int> title_match_end_positions; |
600 for (auto position : match.title_match_positions) { | 600 for (auto position : match.title_match_positions) { |
601 title_match_start_positions.push_back(position.first); | 601 title_match_start_positions.push_back(position.first); |
602 title_match_end_positions.push_back(position.second); | 602 title_match_end_positions.push_back(position.second); |
603 } | 603 } |
604 | 604 |
605 std::vector<int> url_match_start_positions; | 605 std::vector<int> url_match_start_positions; |
(...skipping 425 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1031 BookmarkModelChanged(); | 1031 BookmarkModelChanged(); |
1032 } | 1032 } |
1033 | 1033 |
1034 void BookmarkBridge::PartnerShimLoaded(PartnerBookmarksShim* shim) { | 1034 void BookmarkBridge::PartnerShimLoaded(PartnerBookmarksShim* shim) { |
1035 NotifyIfDoneLoading(); | 1035 NotifyIfDoneLoading(); |
1036 } | 1036 } |
1037 | 1037 |
1038 void BookmarkBridge::ShimBeingDeleted(PartnerBookmarksShim* shim) { | 1038 void BookmarkBridge::ShimBeingDeleted(PartnerBookmarksShim* shim) { |
1039 partner_bookmarks_shim_ = NULL; | 1039 partner_bookmarks_shim_ = NULL; |
1040 } | 1040 } |
OLD | NEW |