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

Side by Side Diff: chrome/browser/extensions/api/bookmarks/bookmark_api_helpers.cc

Issue 242823002: Extract GetNodeByID() method from BookmarkModel. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: revert a change in bookmarks_helper.cc that colides with a wstring and cq does not like that Created 6 years, 8 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/extensions/api/bookmarks/bookmark_api_helpers.h" 5 #include "chrome/browser/extensions/api/bookmarks/bookmark_api_helpers.h"
6 6
7 #include <math.h> // For floor() 7 #include <math.h> // For floor()
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/strings/string_number_conversions.h" 10 #include "base/strings/string_number_conversions.h"
11 #include "base/strings/utf_string_conversions.h" 11 #include "base/strings/utf_string_conversions.h"
12 #include "chrome/browser/bookmarks/bookmark_model.h" 12 #include "chrome/browser/bookmarks/bookmark_model.h"
13 #include "chrome/browser/bookmarks/bookmark_utils.h"
13 #include "chrome/browser/extensions/api/bookmarks/bookmark_api_constants.h" 14 #include "chrome/browser/extensions/api/bookmarks/bookmark_api_constants.h"
14 #include "chrome/common/extensions/api/bookmarks.h" 15 #include "chrome/common/extensions/api/bookmarks.h"
15 16
16 namespace extensions { 17 namespace extensions {
17 18
18 namespace keys = bookmark_api_constants; 19 namespace keys = bookmark_api_constants;
19 using api::bookmarks::BookmarkTreeNode; 20 using api::bookmarks::BookmarkTreeNode;
20 21
21 namespace bookmark_api_helpers { 22 namespace bookmark_api_helpers {
22 23
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 void AddNodeFoldersOnly(const BookmarkNode* node, 94 void AddNodeFoldersOnly(const BookmarkNode* node,
94 std::vector<linked_ptr<BookmarkTreeNode> >* nodes, 95 std::vector<linked_ptr<BookmarkTreeNode> >* nodes,
95 bool recurse) { 96 bool recurse) {
96 return AddNodeHelper(node, nodes, recurse, true); 97 return AddNodeHelper(node, nodes, recurse, true);
97 } 98 }
98 99
99 bool RemoveNode(BookmarkModel* model, 100 bool RemoveNode(BookmarkModel* model,
100 int64 id, 101 int64 id,
101 bool recursive, 102 bool recursive,
102 std::string* error) { 103 std::string* error) {
103 const BookmarkNode* node = model->GetNodeByID(id); 104 const BookmarkNode* node = GetBookmarkNodeByID(model, id);
104 if (!node) { 105 if (!node) {
105 *error = keys::kNoNodeError; 106 *error = keys::kNoNodeError;
106 return false; 107 return false;
107 } 108 }
108 if (model->is_permanent_node(node)) { 109 if (model->is_permanent_node(node)) {
109 *error = keys::kModifySpecialError; 110 *error = keys::kModifySpecialError;
110 return false; 111 return false;
111 } 112 }
112 if (node->is_folder() && !node->empty() && !recursive) { 113 if (node->is_folder() && !node->empty() && !recursive) {
113 *error = keys::kFolderNotEmptyError; 114 *error = keys::kFolderNotEmptyError;
114 return false; 115 return false;
115 } 116 }
116 117
117 const BookmarkNode* parent = node->parent(); 118 const BookmarkNode* parent = node->parent();
118 model->Remove(parent, parent->GetIndexOf(node)); 119 model->Remove(parent, parent->GetIndexOf(node));
119 return true; 120 return true;
120 } 121 }
121 122
122 } // namespace bookmark_api_helpers 123 } // namespace bookmark_api_helpers
123 } // namespace extensions 124 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698