| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/bookmarks/bookmark_model.h" | 5 #include "chrome/browser/bookmarks/bookmark_model.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <functional> | 8 #include <functional> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 413 if (!last_url || *url != *last_url) | 413 if (!last_url || *url != *last_url) |
| 414 urls->push_back(*url); | 414 urls->push_back(*url); |
| 415 last_url = url; | 415 last_url = url; |
| 416 } | 416 } |
| 417 } | 417 } |
| 418 | 418 |
| 419 void BookmarkModel::BlockTillLoaded() { | 419 void BookmarkModel::BlockTillLoaded() { |
| 420 loaded_signal_.Wait(); | 420 loaded_signal_.Wait(); |
| 421 } | 421 } |
| 422 | 422 |
| 423 const BookmarkNode* BookmarkModel::GetNodeByID(int64 id) { | 423 const BookmarkNode* BookmarkModel::GetNodeByID(int64 id) const { |
| 424 // TODO(sky): TreeNode needs a method that visits all nodes using a predicate. | 424 // TODO(sky): TreeNode needs a method that visits all nodes using a predicate. |
| 425 return GetNodeByID(&root_, id); | 425 return GetNodeByID(&root_, id); |
| 426 } | 426 } |
| 427 | 427 |
| 428 const BookmarkNode* BookmarkModel::AddFolder(const BookmarkNode* parent, | 428 const BookmarkNode* BookmarkModel::AddFolder(const BookmarkNode* parent, |
| 429 int index, | 429 int index, |
| 430 const string16& title) { | 430 const string16& title) { |
| 431 if (!loaded_ || is_root_node(parent) || !IsValidIndex(parent, index, true)) { | 431 if (!loaded_ || is_root_node(parent) || !IsValidIndex(parent, index, true)) { |
| 432 // Can't add to the root. | 432 // Can't add to the root. |
| 433 NOTREACHED(); | 433 NOTREACHED(); |
| (...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 692 details.changed_urls.insert(node->url()); | 692 details.changed_urls.insert(node->url()); |
| 693 content::NotificationService::current()->Notify( | 693 content::NotificationService::current()->Notify( |
| 694 chrome::NOTIFICATION_URLS_STARRED, | 694 chrome::NOTIFICATION_URLS_STARRED, |
| 695 content::Source<Profile>(profile_), | 695 content::Source<Profile>(profile_), |
| 696 content::Details<history::URLsStarredDetails>(&details)); | 696 content::Details<history::URLsStarredDetails>(&details)); |
| 697 } | 697 } |
| 698 return node; | 698 return node; |
| 699 } | 699 } |
| 700 | 700 |
| 701 const BookmarkNode* BookmarkModel::GetNodeByID(const BookmarkNode* node, | 701 const BookmarkNode* BookmarkModel::GetNodeByID(const BookmarkNode* node, |
| 702 int64 id) { | 702 int64 id) const { |
| 703 if (node->id() == id) | 703 if (node->id() == id) |
| 704 return node; | 704 return node; |
| 705 | 705 |
| 706 for (int i = 0, child_count = node->child_count(); i < child_count; ++i) { | 706 for (int i = 0, child_count = node->child_count(); i < child_count; ++i) { |
| 707 const BookmarkNode* result = GetNodeByID(node->GetChild(i), id); | 707 const BookmarkNode* result = GetNodeByID(node->GetChild(i), id); |
| 708 if (result) | 708 if (result) |
| 709 return result; | 709 return result; |
| 710 } | 710 } |
| 711 return NULL; | 711 return NULL; |
| 712 } | 712 } |
| (...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 833 file_changed_ = true; | 833 file_changed_ = true; |
| 834 } | 834 } |
| 835 | 835 |
| 836 BookmarkLoadDetails* BookmarkModel::CreateLoadDetails() { | 836 BookmarkLoadDetails* BookmarkModel::CreateLoadDetails() { |
| 837 BookmarkNode* bb_node = CreatePermanentNode(BookmarkNode::BOOKMARK_BAR); | 837 BookmarkNode* bb_node = CreatePermanentNode(BookmarkNode::BOOKMARK_BAR); |
| 838 BookmarkNode* other_node = CreatePermanentNode(BookmarkNode::OTHER_NODE); | 838 BookmarkNode* other_node = CreatePermanentNode(BookmarkNode::OTHER_NODE); |
| 839 BookmarkNode* synced_node = CreatePermanentNode(BookmarkNode::SYNCED); | 839 BookmarkNode* synced_node = CreatePermanentNode(BookmarkNode::SYNCED); |
| 840 return new BookmarkLoadDetails(bb_node, other_node, synced_node, | 840 return new BookmarkLoadDetails(bb_node, other_node, synced_node, |
| 841 new BookmarkIndex(profile_), next_node_id_); | 841 new BookmarkIndex(profile_), next_node_id_); |
| 842 } | 842 } |
| OLD | NEW |