| 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" |
| (...skipping 563 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 574 } | 574 } |
| 575 | 575 |
| 576 if (folder == bookmark_model_->mobile_node() && | 576 if (folder == bookmark_model_->mobile_node() && |
| 577 partner_bookmarks_shim_->HasPartnerBookmarks()) { | 577 partner_bookmarks_shim_->HasPartnerBookmarks()) { |
| 578 ExtractBookmarkNodeInformation( | 578 ExtractBookmarkNodeInformation( |
| 579 partner_bookmarks_shim_->GetPartnerBookmarksRoot(), | 579 partner_bookmarks_shim_->GetPartnerBookmarksRoot(), |
| 580 j_result_obj); | 580 j_result_obj); |
| 581 } | 581 } |
| 582 | 582 |
| 583 if (j_callback_obj) { | 583 if (j_callback_obj) { |
| 584 Java_BookmarksCallback_onBookmarksAvailable( | 584 Java_BookmarksCallback_onBookmarksAvailable(env, j_callback_obj, |
| 585 env, j_callback_obj, folder_id_obj.obj(), j_result_obj); | 585 folder_id_obj, j_result_obj); |
| 586 } | 586 } |
| 587 } | 587 } |
| 588 | 588 |
| 589 jboolean BookmarkBridge::IsFolderVisible(JNIEnv* env, | 589 jboolean BookmarkBridge::IsFolderVisible(JNIEnv* env, |
| 590 const JavaParamRef<jobject>& obj, | 590 const JavaParamRef<jobject>& obj, |
| 591 jlong id, | 591 jlong id, |
| 592 jint type) { | 592 jint type) { |
| 593 if (type == BookmarkType::BOOKMARK_TYPE_NORMAL) { | 593 if (type == BookmarkType::BOOKMARK_TYPE_NORMAL) { |
| 594 const BookmarkNode* node = bookmarks::GetBookmarkNodeByID( | 594 const BookmarkNode* node = bookmarks::GetBookmarkNodeByID( |
| 595 bookmark_model_, static_cast<int64_t>(id)); | 595 bookmark_model_, static_cast<int64_t>(id)); |
| (...skipping 28 matching lines...) Expand all Loading... |
| 624 env, folder->id(), GetBookmarkType(folder)); | 624 env, folder->id(), GetBookmarkType(folder)); |
| 625 | 625 |
| 626 // Get the folder hierarchy. | 626 // Get the folder hierarchy. |
| 627 const BookmarkNode* node = folder; | 627 const BookmarkNode* node = folder; |
| 628 while (node) { | 628 while (node) { |
| 629 ExtractBookmarkNodeInformation(node, j_result_obj); | 629 ExtractBookmarkNodeInformation(node, j_result_obj); |
| 630 node = GetParentNode(node); | 630 node = GetParentNode(node); |
| 631 } | 631 } |
| 632 | 632 |
| 633 Java_BookmarksCallback_onBookmarksFolderHierarchyAvailable( | 633 Java_BookmarksCallback_onBookmarksFolderHierarchyAvailable( |
| 634 env, j_callback_obj, folder_id_obj.obj(), j_result_obj); | 634 env, j_callback_obj, folder_id_obj, j_result_obj); |
| 635 } | 635 } |
| 636 | 636 |
| 637 void BookmarkBridge::SearchBookmarks(JNIEnv* env, | 637 void BookmarkBridge::SearchBookmarks(JNIEnv* env, |
| 638 const JavaParamRef<jobject>& obj, | 638 const JavaParamRef<jobject>& obj, |
| 639 const JavaParamRef<jobject>& j_list, | 639 const JavaParamRef<jobject>& j_list, |
| 640 const JavaParamRef<jstring>& j_query, | 640 const JavaParamRef<jstring>& j_query, |
| 641 jint max_results) { | 641 jint max_results) { |
| 642 DCHECK(bookmark_model_->loaded()); | 642 DCHECK(bookmark_model_->loaded()); |
| 643 | 643 |
| 644 std::vector<bookmarks::BookmarkMatch> results; | 644 std::vector<bookmarks::BookmarkMatch> results; |
| (...skipping 14 matching lines...) Expand all Loading... |
| 659 | 659 |
| 660 std::vector<int> url_match_start_positions; | 660 std::vector<int> url_match_start_positions; |
| 661 std::vector<int> url_match_end_positions; | 661 std::vector<int> url_match_end_positions; |
| 662 for (auto position : match.url_match_positions) { | 662 for (auto position : match.url_match_positions) { |
| 663 url_match_start_positions.push_back(position.first); | 663 url_match_start_positions.push_back(position.first); |
| 664 url_match_end_positions.push_back(position.second); | 664 url_match_end_positions.push_back(position.second); |
| 665 } | 665 } |
| 666 | 666 |
| 667 Java_BookmarkBridge_addToBookmarkMatchList( | 667 Java_BookmarkBridge_addToBookmarkMatchList( |
| 668 env, j_list, node->id(), node->type(), | 668 env, j_list, node->id(), node->type(), |
| 669 ToJavaIntArray(env, title_match_start_positions).obj(), | 669 ToJavaIntArray(env, title_match_start_positions), |
| 670 ToJavaIntArray(env, title_match_end_positions).obj(), | 670 ToJavaIntArray(env, title_match_end_positions), |
| 671 ToJavaIntArray(env, url_match_start_positions).obj(), | 671 ToJavaIntArray(env, url_match_start_positions), |
| 672 ToJavaIntArray(env, url_match_end_positions).obj()); | 672 ToJavaIntArray(env, url_match_end_positions)); |
| 673 } | 673 } |
| 674 } | 674 } |
| 675 | 675 |
| 676 ScopedJavaLocalRef<jobject> BookmarkBridge::AddFolder( | 676 ScopedJavaLocalRef<jobject> BookmarkBridge::AddFolder( |
| 677 JNIEnv* env, | 677 JNIEnv* env, |
| 678 const JavaParamRef<jobject>& obj, | 678 const JavaParamRef<jobject>& obj, |
| 679 const JavaParamRef<jobject>& j_parent_id_obj, | 679 const JavaParamRef<jobject>& j_parent_id_obj, |
| 680 jint index, | 680 jint index, |
| 681 const JavaParamRef<jstring>& j_title) { | 681 const JavaParamRef<jstring>& j_title) { |
| 682 DCHECK(IsLoaded()); | 682 DCHECK(IsLoaded()); |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 812 JNIEnv* env = AttachCurrentThread(); | 812 JNIEnv* env = AttachCurrentThread(); |
| 813 | 813 |
| 814 const BookmarkNode* parent = GetParentNode(node); | 814 const BookmarkNode* parent = GetParentNode(node); |
| 815 int64_t parent_id = parent ? parent->id() : -1; | 815 int64_t parent_id = parent ? parent->id() : -1; |
| 816 | 816 |
| 817 std::string url; | 817 std::string url; |
| 818 if (node->is_url()) | 818 if (node->is_url()) |
| 819 url = node->url().spec(); | 819 url = node->url().spec(); |
| 820 | 820 |
| 821 return Java_BookmarkBridge_createBookmarkItem( | 821 return Java_BookmarkBridge_createBookmarkItem( |
| 822 env, | 822 env, node->id(), GetBookmarkType(node), |
| 823 node->id(), | 823 ConvertUTF16ToJavaString(env, GetTitle(node)), |
| 824 GetBookmarkType(node), | 824 ConvertUTF8ToJavaString(env, url), node->is_folder(), parent_id, |
| 825 ConvertUTF16ToJavaString(env, GetTitle(node)).obj(), | 825 GetBookmarkType(parent), IsEditable(node), IsManaged(node)); |
| 826 ConvertUTF8ToJavaString(env, url).obj(), | |
| 827 node->is_folder(), | |
| 828 parent_id, | |
| 829 GetBookmarkType(parent), | |
| 830 IsEditable(node), | |
| 831 IsManaged(node)); | |
| 832 } | 826 } |
| 833 | 827 |
| 834 void BookmarkBridge::ExtractBookmarkNodeInformation(const BookmarkNode* node, | 828 void BookmarkBridge::ExtractBookmarkNodeInformation(const BookmarkNode* node, |
| 835 jobject j_result_obj) { | 829 jobject j_result_obj) { |
| 836 JNIEnv* env = AttachCurrentThread(); | 830 JNIEnv* env = AttachCurrentThread(); |
| 837 if (!IsReachable(node)) | 831 if (!IsReachable(node)) |
| 838 return; | 832 return; |
| 839 Java_BookmarkBridge_addToList( | 833 Java_BookmarkBridge_addToList(env, j_result_obj, CreateJavaBookmark(node)); |
| 840 env, j_result_obj, CreateJavaBookmark(node).obj()); | |
| 841 } | 834 } |
| 842 | 835 |
| 843 const BookmarkNode* BookmarkBridge::GetNodeByID(long node_id, int type) { | 836 const BookmarkNode* BookmarkBridge::GetNodeByID(long node_id, int type) { |
| 844 const BookmarkNode* node; | 837 const BookmarkNode* node; |
| 845 if (type == BookmarkType::BOOKMARK_TYPE_PARTNER) { | 838 if (type == BookmarkType::BOOKMARK_TYPE_PARTNER) { |
| 846 node = partner_bookmarks_shim_->GetNodeByID(static_cast<int64_t>(node_id)); | 839 node = partner_bookmarks_shim_->GetNodeByID(static_cast<int64_t>(node_id)); |
| 847 } else { | 840 } else { |
| 848 node = bookmarks::GetBookmarkNodeByID(bookmark_model_, | 841 node = bookmarks::GetBookmarkNodeByID(bookmark_model_, |
| 849 static_cast<int64_t>(node_id)); | 842 static_cast<int64_t>(node_id)); |
| 850 } | 843 } |
| (...skipping 16 matching lines...) Expand all Loading... |
| 867 bool BookmarkBridge::IsEditBookmarksEnabled() const { | 860 bool BookmarkBridge::IsEditBookmarksEnabled() const { |
| 868 return profile_->GetPrefs()->GetBoolean( | 861 return profile_->GetPrefs()->GetBoolean( |
| 869 bookmarks::prefs::kEditBookmarksEnabled); | 862 bookmarks::prefs::kEditBookmarksEnabled); |
| 870 } | 863 } |
| 871 | 864 |
| 872 void BookmarkBridge::EditBookmarksEnabledChanged() { | 865 void BookmarkBridge::EditBookmarksEnabledChanged() { |
| 873 JNIEnv* env = AttachCurrentThread(); | 866 JNIEnv* env = AttachCurrentThread(); |
| 874 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 867 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 875 if (obj.is_null()) | 868 if (obj.is_null()) |
| 876 return; | 869 return; |
| 877 Java_BookmarkBridge_editBookmarksEnabledChanged(env, obj.obj()); | 870 Java_BookmarkBridge_editBookmarksEnabledChanged(env, obj); |
| 878 } | 871 } |
| 879 | 872 |
| 880 bool BookmarkBridge::IsEditable(const BookmarkNode* node) const { | 873 bool BookmarkBridge::IsEditable(const BookmarkNode* node) const { |
| 881 if (!node || (node->type() != BookmarkNode::FOLDER && | 874 if (!node || (node->type() != BookmarkNode::FOLDER && |
| 882 node->type() != BookmarkNode::URL)) { | 875 node->type() != BookmarkNode::URL)) { |
| 883 return false; | 876 return false; |
| 884 } | 877 } |
| 885 if (!IsEditBookmarksEnabled()) | 878 if (!IsEditBookmarksEnabled()) |
| 886 return false; | 879 return false; |
| 887 if (partner_bookmarks_shim_->IsPartnerBookmark(node)) | 880 if (partner_bookmarks_shim_->IsPartnerBookmark(node)) |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 938 (signin && signin->IsAuthenticated()); | 931 (signin && signin->IsAuthenticated()); |
| 939 } | 932 } |
| 940 | 933 |
| 941 void BookmarkBridge::NotifyIfDoneLoading() { | 934 void BookmarkBridge::NotifyIfDoneLoading() { |
| 942 if (!IsLoaded()) | 935 if (!IsLoaded()) |
| 943 return; | 936 return; |
| 944 JNIEnv* env = AttachCurrentThread(); | 937 JNIEnv* env = AttachCurrentThread(); |
| 945 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 938 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 946 if (obj.is_null()) | 939 if (obj.is_null()) |
| 947 return; | 940 return; |
| 948 Java_BookmarkBridge_bookmarkModelLoaded(env, obj.obj()); | 941 Java_BookmarkBridge_bookmarkModelLoaded(env, obj); |
| 949 } | 942 } |
| 950 | 943 |
| 951 // ------------- Observer-related methods ------------- // | 944 // ------------- Observer-related methods ------------- // |
| 952 | 945 |
| 953 void BookmarkBridge::BookmarkModelChanged() { | 946 void BookmarkBridge::BookmarkModelChanged() { |
| 954 if (!IsLoaded()) | 947 if (!IsLoaded()) |
| 955 return; | 948 return; |
| 956 | 949 |
| 957 // Called when there are changes to the bookmark model. It is most | 950 // Called when there are changes to the bookmark model. It is most |
| 958 // likely changes to the partner bookmarks. | 951 // likely changes to the partner bookmarks. |
| 959 JNIEnv* env = AttachCurrentThread(); | 952 JNIEnv* env = AttachCurrentThread(); |
| 960 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 953 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 961 if (obj.is_null()) | 954 if (obj.is_null()) |
| 962 return; | 955 return; |
| 963 Java_BookmarkBridge_bookmarkModelChanged(env, obj.obj()); | 956 Java_BookmarkBridge_bookmarkModelChanged(env, obj); |
| 964 } | 957 } |
| 965 | 958 |
| 966 void BookmarkBridge::BookmarkModelLoaded(BookmarkModel* model, | 959 void BookmarkBridge::BookmarkModelLoaded(BookmarkModel* model, |
| 967 bool ids_reassigned) { | 960 bool ids_reassigned) { |
| 968 NotifyIfDoneLoading(); | 961 NotifyIfDoneLoading(); |
| 969 } | 962 } |
| 970 | 963 |
| 971 void BookmarkBridge::BookmarkModelBeingDeleted(BookmarkModel* model) { | 964 void BookmarkBridge::BookmarkModelBeingDeleted(BookmarkModel* model) { |
| 972 if (!IsLoaded()) | 965 if (!IsLoaded()) |
| 973 return; | 966 return; |
| 974 | 967 |
| 975 JNIEnv* env = AttachCurrentThread(); | 968 JNIEnv* env = AttachCurrentThread(); |
| 976 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 969 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 977 if (obj.is_null()) | 970 if (obj.is_null()) |
| 978 return; | 971 return; |
| 979 Java_BookmarkBridge_bookmarkModelDeleted(env, obj.obj()); | 972 Java_BookmarkBridge_bookmarkModelDeleted(env, obj); |
| 980 } | 973 } |
| 981 | 974 |
| 982 void BookmarkBridge::BookmarkNodeMoved(BookmarkModel* model, | 975 void BookmarkBridge::BookmarkNodeMoved(BookmarkModel* model, |
| 983 const BookmarkNode* old_parent, | 976 const BookmarkNode* old_parent, |
| 984 int old_index, | 977 int old_index, |
| 985 const BookmarkNode* new_parent, | 978 const BookmarkNode* new_parent, |
| 986 int new_index) { | 979 int new_index) { |
| 987 if (!IsLoaded()) | 980 if (!IsLoaded()) |
| 988 return; | 981 return; |
| 989 | 982 |
| 990 JNIEnv* env = AttachCurrentThread(); | 983 JNIEnv* env = AttachCurrentThread(); |
| 991 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 984 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 992 if (obj.is_null()) | 985 if (obj.is_null()) |
| 993 return; | 986 return; |
| 994 Java_BookmarkBridge_bookmarkNodeMoved( | 987 Java_BookmarkBridge_bookmarkNodeMoved( |
| 995 env, | 988 env, obj, CreateJavaBookmark(old_parent), old_index, |
| 996 obj.obj(), | 989 CreateJavaBookmark(new_parent), new_index); |
| 997 CreateJavaBookmark(old_parent).obj(), | |
| 998 old_index, | |
| 999 CreateJavaBookmark(new_parent).obj(), | |
| 1000 new_index); | |
| 1001 } | 990 } |
| 1002 | 991 |
| 1003 void BookmarkBridge::BookmarkNodeAdded(BookmarkModel* model, | 992 void BookmarkBridge::BookmarkNodeAdded(BookmarkModel* model, |
| 1004 const BookmarkNode* parent, | 993 const BookmarkNode* parent, |
| 1005 int index) { | 994 int index) { |
| 1006 if (!IsLoaded()) | 995 if (!IsLoaded()) |
| 1007 return; | 996 return; |
| 1008 | 997 |
| 1009 JNIEnv* env = AttachCurrentThread(); | 998 JNIEnv* env = AttachCurrentThread(); |
| 1010 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 999 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 1011 if (obj.is_null()) | 1000 if (obj.is_null()) |
| 1012 return; | 1001 return; |
| 1013 Java_BookmarkBridge_bookmarkNodeAdded( | 1002 Java_BookmarkBridge_bookmarkNodeAdded(env, obj, CreateJavaBookmark(parent), |
| 1014 env, | 1003 index); |
| 1015 obj.obj(), | |
| 1016 CreateJavaBookmark(parent).obj(), | |
| 1017 index); | |
| 1018 } | 1004 } |
| 1019 | 1005 |
| 1020 void BookmarkBridge::BookmarkNodeRemoved(BookmarkModel* model, | 1006 void BookmarkBridge::BookmarkNodeRemoved(BookmarkModel* model, |
| 1021 const BookmarkNode* parent, | 1007 const BookmarkNode* parent, |
| 1022 int old_index, | 1008 int old_index, |
| 1023 const BookmarkNode* node, | 1009 const BookmarkNode* node, |
| 1024 const std::set<GURL>& removed_urls) { | 1010 const std::set<GURL>& removed_urls) { |
| 1025 if (!IsLoaded()) | 1011 if (!IsLoaded()) |
| 1026 return; | 1012 return; |
| 1027 | 1013 |
| 1028 JNIEnv* env = AttachCurrentThread(); | 1014 JNIEnv* env = AttachCurrentThread(); |
| 1029 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 1015 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 1030 if (obj.is_null()) | 1016 if (obj.is_null()) |
| 1031 return; | 1017 return; |
| 1032 Java_BookmarkBridge_bookmarkNodeRemoved( | 1018 Java_BookmarkBridge_bookmarkNodeRemoved(env, obj, CreateJavaBookmark(parent), |
| 1033 env, | 1019 old_index, CreateJavaBookmark(node)); |
| 1034 obj.obj(), | |
| 1035 CreateJavaBookmark(parent).obj(), | |
| 1036 old_index, | |
| 1037 CreateJavaBookmark(node).obj()); | |
| 1038 } | 1020 } |
| 1039 | 1021 |
| 1040 void BookmarkBridge::BookmarkAllUserNodesRemoved( | 1022 void BookmarkBridge::BookmarkAllUserNodesRemoved( |
| 1041 BookmarkModel* model, | 1023 BookmarkModel* model, |
| 1042 const std::set<GURL>& removed_urls) { | 1024 const std::set<GURL>& removed_urls) { |
| 1043 if (!IsLoaded()) | 1025 if (!IsLoaded()) |
| 1044 return; | 1026 return; |
| 1045 | 1027 |
| 1046 JNIEnv* env = AttachCurrentThread(); | 1028 JNIEnv* env = AttachCurrentThread(); |
| 1047 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 1029 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 1048 if (obj.is_null()) | 1030 if (obj.is_null()) |
| 1049 return; | 1031 return; |
| 1050 Java_BookmarkBridge_bookmarkAllUserNodesRemoved(env, obj.obj()); | 1032 Java_BookmarkBridge_bookmarkAllUserNodesRemoved(env, obj); |
| 1051 } | 1033 } |
| 1052 | 1034 |
| 1053 void BookmarkBridge::BookmarkNodeChanged(BookmarkModel* model, | 1035 void BookmarkBridge::BookmarkNodeChanged(BookmarkModel* model, |
| 1054 const BookmarkNode* node) { | 1036 const BookmarkNode* node) { |
| 1055 if (!IsLoaded()) | 1037 if (!IsLoaded()) |
| 1056 return; | 1038 return; |
| 1057 | 1039 |
| 1058 JNIEnv* env = AttachCurrentThread(); | 1040 JNIEnv* env = AttachCurrentThread(); |
| 1059 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 1041 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 1060 if (obj.is_null()) | 1042 if (obj.is_null()) |
| 1061 return; | 1043 return; |
| 1062 Java_BookmarkBridge_bookmarkNodeChanged( | 1044 Java_BookmarkBridge_bookmarkNodeChanged(env, obj, CreateJavaBookmark(node)); |
| 1063 env, | |
| 1064 obj.obj(), | |
| 1065 CreateJavaBookmark(node).obj()); | |
| 1066 } | 1045 } |
| 1067 | 1046 |
| 1068 void BookmarkBridge::BookmarkNodeChildrenReordered(BookmarkModel* model, | 1047 void BookmarkBridge::BookmarkNodeChildrenReordered(BookmarkModel* model, |
| 1069 const BookmarkNode* node) { | 1048 const BookmarkNode* node) { |
| 1070 if (!IsLoaded()) | 1049 if (!IsLoaded()) |
| 1071 return; | 1050 return; |
| 1072 | 1051 |
| 1073 JNIEnv* env = AttachCurrentThread(); | 1052 JNIEnv* env = AttachCurrentThread(); |
| 1074 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 1053 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 1075 if (obj.is_null()) | 1054 if (obj.is_null()) |
| 1076 return; | 1055 return; |
| 1077 Java_BookmarkBridge_bookmarkNodeChildrenReordered( | 1056 Java_BookmarkBridge_bookmarkNodeChildrenReordered(env, obj, |
| 1078 env, | 1057 CreateJavaBookmark(node)); |
| 1079 obj.obj(), | |
| 1080 CreateJavaBookmark(node).obj()); | |
| 1081 } | 1058 } |
| 1082 | 1059 |
| 1083 void BookmarkBridge::ExtensiveBookmarkChangesBeginning(BookmarkModel* model) { | 1060 void BookmarkBridge::ExtensiveBookmarkChangesBeginning(BookmarkModel* model) { |
| 1084 if (!IsLoaded()) | 1061 if (!IsLoaded()) |
| 1085 return; | 1062 return; |
| 1086 | 1063 |
| 1087 JNIEnv* env = AttachCurrentThread(); | 1064 JNIEnv* env = AttachCurrentThread(); |
| 1088 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 1065 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 1089 if (obj.is_null()) | 1066 if (obj.is_null()) |
| 1090 return; | 1067 return; |
| 1091 Java_BookmarkBridge_extensiveBookmarkChangesBeginning(env, obj.obj()); | 1068 Java_BookmarkBridge_extensiveBookmarkChangesBeginning(env, obj); |
| 1092 } | 1069 } |
| 1093 | 1070 |
| 1094 void BookmarkBridge::ExtensiveBookmarkChangesEnded(BookmarkModel* model) { | 1071 void BookmarkBridge::ExtensiveBookmarkChangesEnded(BookmarkModel* model) { |
| 1095 if (!IsLoaded()) | 1072 if (!IsLoaded()) |
| 1096 return; | 1073 return; |
| 1097 | 1074 |
| 1098 JNIEnv* env = AttachCurrentThread(); | 1075 JNIEnv* env = AttachCurrentThread(); |
| 1099 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 1076 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 1100 if (obj.is_null()) | 1077 if (obj.is_null()) |
| 1101 return; | 1078 return; |
| 1102 Java_BookmarkBridge_extensiveBookmarkChangesEnded(env, obj.obj()); | 1079 Java_BookmarkBridge_extensiveBookmarkChangesEnded(env, obj); |
| 1103 } | 1080 } |
| 1104 | 1081 |
| 1105 void BookmarkBridge::PartnerShimChanged(PartnerBookmarksShim* shim) { | 1082 void BookmarkBridge::PartnerShimChanged(PartnerBookmarksShim* shim) { |
| 1106 if (!IsLoaded()) | 1083 if (!IsLoaded()) |
| 1107 return; | 1084 return; |
| 1108 | 1085 |
| 1109 BookmarkModelChanged(); | 1086 BookmarkModelChanged(); |
| 1110 } | 1087 } |
| 1111 | 1088 |
| 1112 void BookmarkBridge::PartnerShimLoaded(PartnerBookmarksShim* shim) { | 1089 void BookmarkBridge::PartnerShimLoaded(PartnerBookmarksShim* shim) { |
| 1113 NotifyIfDoneLoading(); | 1090 NotifyIfDoneLoading(); |
| 1114 } | 1091 } |
| 1115 | 1092 |
| 1116 void BookmarkBridge::ShimBeingDeleted(PartnerBookmarksShim* shim) { | 1093 void BookmarkBridge::ShimBeingDeleted(PartnerBookmarksShim* shim) { |
| 1117 partner_bookmarks_shim_ = NULL; | 1094 partner_bookmarks_shim_ = NULL; |
| 1118 } | 1095 } |
| OLD | NEW |