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

Unified Diff: chrome/browser/extensions/api/bookmarks/bookmarks_api.cc

Issue 320473002: Added the "unmodifiable" property to chrome.bookmarks.BookmarkTreeNode. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebaes Created 6 years, 6 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/extensions/api/bookmarks/bookmarks_api.cc
diff --git a/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc b/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc
index 3b7b29c5351e32649d1a55979094ec049baa112c..c09877b608cc353bcd091aa37d996d28686e59c3 100644
--- a/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc
+++ b/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc
@@ -237,9 +237,11 @@ void BookmarksFunction::BookmarkModelLoaded(BookmarkModel* model,
Release(); // Balanced in RunOnReady().
}
-BookmarkEventRouter::BookmarkEventRouter(BrowserContext* context,
- BookmarkModel* model)
- : browser_context_(context), model_(model) {
+BookmarkEventRouter::BookmarkEventRouter(Profile* profile)
+ : browser_context_(profile),
+ model_(BookmarkModelFactory::GetForProfile(profile)),
+ client_(
+ BookmarkModelFactory::GetChromeBookmarkClientForProfile(profile)) {
model_->AddObserver(this);
}
@@ -291,7 +293,7 @@ void BookmarkEventRouter::BookmarkNodeAdded(BookmarkModel* model,
int index) {
const BookmarkNode* node = parent->GetChild(index);
scoped_ptr<BookmarkTreeNode> tree_node(
- bookmark_api_helpers::GetBookmarkTreeNode(node, false, false));
+ bookmark_api_helpers::GetBookmarkTreeNode(client_, node, false, false));
DispatchEvent(bookmarks::OnCreated::kEventName,
bookmarks::OnCreated::Create(base::Int64ToString(node->id()),
*tree_node));
@@ -399,10 +401,8 @@ BookmarksAPI::GetFactoryInstance() {
}
void BookmarksAPI::OnListenerAdded(const EventListenerInfo& details) {
- bookmark_event_router_.reset(new BookmarkEventRouter(
- browser_context_,
- BookmarkModelFactory::GetForProfile(
- Profile::FromBrowserContext(browser_context_))));
+ bookmark_event_router_.reset(
+ new BookmarkEventRouter(Profile::FromBrowserContext(browser_context_)));
EventRouter::Get(browser_context_)->UnregisterObserver(this);
}
@@ -412,6 +412,7 @@ bool BookmarksGetFunction::RunOnReady() {
EXTENSION_FUNCTION_VALIDATE(params.get());
std::vector<linked_ptr<BookmarkTreeNode> > nodes;
+ ChromeBookmarkClient* client = GetChromeBookmarkClient();
if (params->id_or_id_list.as_strings) {
std::vector<std::string>& ids = *params->id_or_id_list.as_strings;
size_t count = ids.size();
@@ -420,14 +421,14 @@ bool BookmarksGetFunction::RunOnReady() {
const BookmarkNode* node = GetBookmarkNodeFromId(ids[i]);
if (!node)
return false;
- bookmark_api_helpers::AddNode(node, &nodes, false);
+ bookmark_api_helpers::AddNode(client, node, &nodes, false);
}
} else {
const BookmarkNode* node =
GetBookmarkNodeFromId(*params->id_or_id_list.as_string);
if (!node)
return false;
- bookmark_api_helpers::AddNode(node, &nodes, false);
+ bookmark_api_helpers::AddNode(client, node, &nodes, false);
}
results_ = bookmarks::Get::Results::Create(nodes);
@@ -447,7 +448,8 @@ bool BookmarksGetChildrenFunction::RunOnReady() {
int child_count = node->child_count();
for (int i = 0; i < child_count; ++i) {
const BookmarkNode* child = node->GetChild(i);
- bookmark_api_helpers::AddNode(child, &nodes, false);
+ bookmark_api_helpers::AddNode(
+ GetChromeBookmarkClient(), child, &nodes, false);
}
results_ = bookmarks::GetChildren::Results::Create(nodes);
@@ -471,7 +473,8 @@ bool BookmarksGetRecentFunction::RunOnReady() {
std::vector<const BookmarkNode*>::iterator i = nodes.begin();
for (; i != nodes.end(); ++i) {
const BookmarkNode* node = *i;
- bookmark_api_helpers::AddNode(node, &tree_nodes, false);
+ bookmark_api_helpers::AddNode(
+ GetChromeBookmarkClient(), node, &tree_nodes, false);
}
results_ = bookmarks::GetRecent::Results::Create(tree_nodes);
@@ -482,7 +485,7 @@ bool BookmarksGetTreeFunction::RunOnReady() {
std::vector<linked_ptr<BookmarkTreeNode> > nodes;
const BookmarkNode* node =
BookmarkModelFactory::GetForProfile(GetProfile())->root_node();
- bookmark_api_helpers::AddNode(node, &nodes, true);
+ bookmark_api_helpers::AddNode(GetChromeBookmarkClient(), node, &nodes, true);
results_ = bookmarks::GetTree::Results::Create(nodes);
return true;
}
@@ -497,7 +500,7 @@ bool BookmarksGetSubTreeFunction::RunOnReady() {
return false;
std::vector<linked_ptr<BookmarkTreeNode> > nodes;
- bookmark_api_helpers::AddNode(node, &nodes, true);
+ bookmark_api_helpers::AddNode(GetChromeBookmarkClient(), node, &nodes, true);
results_ = bookmarks::GetSubTree::Results::Create(nodes);
return true;
}
@@ -542,9 +545,10 @@ bool BookmarksSearchFunction::RunOnReady() {
}
std::vector<linked_ptr<BookmarkTreeNode> > tree_nodes;
+ ChromeBookmarkClient* client = GetChromeBookmarkClient();
for (std::vector<const BookmarkNode*>::iterator node_iter = nodes.begin();
node_iter != nodes.end(); ++node_iter) {
- bookmark_api_helpers::AddNode(*node_iter, &tree_nodes, false);
+ bookmark_api_helpers::AddNode(client, *node_iter, &tree_nodes, false);
}
results_ = bookmarks::Search::Results::Create(tree_nodes);
@@ -602,8 +606,8 @@ bool BookmarksCreateFunction::RunOnReady() {
if (!node)
return false;
- scoped_ptr<BookmarkTreeNode> ret(
- bookmark_api_helpers::GetBookmarkTreeNode(node, false, false));
+ scoped_ptr<BookmarkTreeNode> ret(bookmark_api_helpers::GetBookmarkTreeNode(
+ GetChromeBookmarkClient(), node, false, false));
results_ = bookmarks::Create::Results::Create(*ret);
return true;
@@ -663,7 +667,8 @@ bool BookmarksMoveFunction::RunOnReady() {
model->Move(node, parent, index);
scoped_ptr<BookmarkTreeNode> tree_node(
- bookmark_api_helpers::GetBookmarkTreeNode(node, false, false));
+ bookmark_api_helpers::GetBookmarkTreeNode(
+ GetChromeBookmarkClient(), node, false, false));
results_ = bookmarks::Move::Results::Create(*tree_node);
return true;
@@ -718,7 +723,8 @@ bool BookmarksUpdateFunction::RunOnReady() {
model->SetURL(node, url);
scoped_ptr<BookmarkTreeNode> tree_node(
- bookmark_api_helpers::GetBookmarkTreeNode(node, false, false));
+ bookmark_api_helpers::GetBookmarkTreeNode(
+ GetChromeBookmarkClient(), node, false, false));
results_ = bookmarks::Update::Results::Create(*tree_node);
return true;
}
« no previous file with comments | « chrome/browser/extensions/api/bookmarks/bookmarks_api.h ('k') | chrome/common/extensions/api/bookmarks.json » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698