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/bookmarks_bridge.h" | 5 #include "chrome/browser/android/bookmarks/bookmarks_bridge.h" |
6 | 6 |
7 #include "base/android/jni_string.h" | 7 #include "base/android/jni_string.h" |
8 #include "base/containers/stack_container.h" | 8 #include "base/containers/stack_container.h" |
9 #include "base/i18n/string_compare.h" | 9 #include "base/i18n/string_compare.h" |
10 #include "base/prefs/pref_service.h" | 10 #include "base/prefs/pref_service.h" |
(...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
442 } | 442 } |
443 | 443 |
444 void BookmarksBridge::GetAllBookmarkIDsOrderedByCreationDate( | 444 void BookmarksBridge::GetAllBookmarkIDsOrderedByCreationDate( |
445 JNIEnv* env, | 445 JNIEnv* env, |
446 jobject obj, | 446 jobject obj, |
447 jobject j_result_obj) { | 447 jobject j_result_obj) { |
448 DCHECK(IsLoaded()); | 448 DCHECK(IsLoaded()); |
449 std::list<const BookmarkNode*> folders; | 449 std::list<const BookmarkNode*> folders; |
450 std::vector<const BookmarkNode*> result; | 450 std::vector<const BookmarkNode*> result; |
451 folders.push_back(bookmark_model_->root_node()); | 451 folders.push_back(bookmark_model_->root_node()); |
452 folders.push_back(partner_bookmarks_shim_->GetPartnerBookmarksRoot()); | |
453 | 452 |
454 for (std::list<const BookmarkNode*>::iterator folder_iter = folders.begin(); | 453 for (std::list<const BookmarkNode*>::iterator folder_iter = folders.begin(); |
455 folder_iter != folders.end(); ++folder_iter) { | 454 folder_iter != folders.end(); ++folder_iter) { |
456 if (*folder_iter == NULL) | 455 if (*folder_iter == NULL) |
457 continue; | 456 continue; |
458 | 457 |
459 std::list<const BookmarkNode*>::iterator insert_iter = folder_iter; | 458 std::list<const BookmarkNode*>::iterator insert_iter = folder_iter; |
460 ++insert_iter; | 459 ++insert_iter; |
461 | 460 |
462 for (int i = 0; i < (*folder_iter)->child_count(); ++i) { | 461 for (int i = 0; i < (*folder_iter)->child_count(); ++i) { |
463 const BookmarkNode* child = (*folder_iter)->GetChild(i); | 462 const BookmarkNode* child = (*folder_iter)->GetChild(i); |
464 if (!IsFolderAvailable(child) || !IsReachable(child)) | 463 if (!IsFolderAvailable(child) || !IsReachable(child) || |
| 464 client_->IsDescendantOfManagedNode(child)) |
465 continue; | 465 continue; |
466 | 466 |
467 if (child->is_folder()) { | 467 if (child->is_folder()) { |
468 insert_iter = folders.insert(insert_iter, child); | 468 insert_iter = folders.insert(insert_iter, child); |
469 } else { | 469 } else { |
470 result.push_back(child); | 470 result.push_back(child); |
471 } | 471 } |
472 } | 472 } |
473 } | 473 } |
474 | 474 |
(...skipping 529 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1004 BookmarkModelChanged(); | 1004 BookmarkModelChanged(); |
1005 } | 1005 } |
1006 | 1006 |
1007 void BookmarksBridge::PartnerShimLoaded(PartnerBookmarksShim* shim) { | 1007 void BookmarksBridge::PartnerShimLoaded(PartnerBookmarksShim* shim) { |
1008 NotifyIfDoneLoading(); | 1008 NotifyIfDoneLoading(); |
1009 } | 1009 } |
1010 | 1010 |
1011 void BookmarksBridge::ShimBeingDeleted(PartnerBookmarksShim* shim) { | 1011 void BookmarksBridge::ShimBeingDeleted(PartnerBookmarksShim* shim) { |
1012 partner_bookmarks_shim_ = NULL; | 1012 partner_bookmarks_shim_ = NULL; |
1013 } | 1013 } |
OLD | NEW |