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

Unified Diff: chrome/browser/ui/bookmarks/bookmark_context_menu_controller.cc

Issue 317333004: Added BookmarkClient::CanBeEditedByUser. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: added TODO 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/ui/bookmarks/bookmark_context_menu_controller.cc
diff --git a/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.cc b/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.cc
index 03242ba88aface87ab23d00ff327e8a3b0d8eb88..44251882cbe51d1380a21d915a9f7b40b1b84558 100644
--- a/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.cc
+++ b/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.cc
@@ -20,6 +20,7 @@
#include "chrome/browser/undo/bookmark_undo_service_factory.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/pref_names.h"
+#include "components/bookmarks/browser/bookmark_client.h"
#include "components/bookmarks/browser/bookmark_model.h"
#include "components/bookmarks/browser/bookmark_utils.h"
#include "content/public/browser/page_navigator.h"
@@ -321,9 +322,12 @@ bool BookmarkContextMenuController::IsCommandIdEnabled(int command_id) const {
bool is_root_node = selection_.size() == 1 &&
selection_[0]->parent() == model_->root_node();
- bool can_edit = prefs->GetBoolean(prefs::kEditBookmarksEnabled);
+ bool can_edit =
+ prefs->GetBoolean(prefs::kEditBookmarksEnabled) &&
+ bookmark_utils::CanAllBeEditedByUser(model_->client(), selection_);
IncognitoModePrefs::Availability incognito_avail =
IncognitoModePrefs::GetAvailability(prefs);
+
switch (command_id) {
case IDC_BOOKMARK_BAR_OPEN_INCOGNITO:
return !profile_->IsOffTheRecord() &&
@@ -360,8 +364,9 @@ bool BookmarkContextMenuController::IsCommandIdEnabled(int command_id) const {
case IDC_BOOKMARK_BAR_NEW_FOLDER:
case IDC_BOOKMARK_BAR_ADD_NEW_BOOKMARK:
- return can_edit && bookmark_utils::GetParentForNewNodes(
- parent_, selection_, NULL) != NULL;
+ return can_edit && model_->client()->CanBeEditedByUser(parent_) &&
+ bookmark_utils::GetParentForNewNodes(parent_, selection_, NULL) !=
+ NULL;
case IDC_BOOKMARK_BAR_ALWAYS_SHOW:
return !prefs->IsManagedPreference(prefs::kShowBookmarkBar);
@@ -378,8 +383,8 @@ bool BookmarkContextMenuController::IsCommandIdEnabled(int command_id) const {
// Paste to selection from the Bookmark Bar, to parent_ everywhere else
return can_edit &&
((!selection_.empty() &&
- bookmark_utils::CanPasteFromClipboard(selection_[0])) ||
- bookmark_utils::CanPasteFromClipboard(parent_));
+ bookmark_utils::CanPasteFromClipboard(model_, selection_[0])) ||
+ bookmark_utils::CanPasteFromClipboard(model_, parent_));
}
return true;
}

Powered by Google App Engine
This is Rietveld 408576698