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

Side by Side Diff: chrome/browser/ui/cocoa/bookmarks/bookmark_menu_bridge.mm

Issue 1203713002: Limit access to ChromeBookmarkClient to bookmarks code (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@cleanup_bookmark_client
Patch Set: Rebase Created 5 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 unified diff | Download patch
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 #import <AppKit/AppKit.h> 5 #import <AppKit/AppKit.h>
6 6
7 #include "base/strings/sys_string_conversions.h" 7 #include "base/strings/sys_string_conversions.h"
8 #include "chrome/app/chrome_command_ids.h" 8 #include "chrome/app/chrome_command_ids.h"
9 #import "chrome/browser/app_controller_mac.h" 9 #import "chrome/browser/app_controller_mac.h"
10 #include "chrome/browser/bookmarks/bookmark_model_factory.h" 10 #include "chrome/browser/bookmarks/bookmark_model_factory.h"
11 #include "chrome/browser/bookmarks/chrome_bookmark_client.h"
12 #include "chrome/browser/bookmarks/chrome_bookmark_client_factory.h"
13 #include "chrome/browser/prefs/incognito_mode_prefs.h" 11 #include "chrome/browser/prefs/incognito_mode_prefs.h"
14 #include "chrome/browser/profiles/profile.h" 12 #include "chrome/browser/profiles/profile.h"
15 #include "chrome/browser/profiles/profile_manager.h" 13 #include "chrome/browser/profiles/profile_manager.h"
16 #include "chrome/browser/ui/browser_list.h" 14 #include "chrome/browser/ui/browser_list.h"
17 #include "chrome/browser/ui/cocoa/bookmarks/bookmark_menu_bridge.h" 15 #include "chrome/browser/ui/cocoa/bookmarks/bookmark_menu_bridge.h"
18 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.h" 16 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.h"
19 #include "chrome/grit/generated_resources.h" 17 #include "chrome/grit/generated_resources.h"
20 #include "components/bookmarks/browser/bookmark_model.h" 18 #include "components/bookmarks/browser/bookmark_model.h"
21 #include "grit/theme_resources.h" 19 #include "grit/theme_resources.h"
22 #include "ui/base/l10n/l10n_util.h" 20 #include "ui/base/l10n/l10n_util.h"
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 if (!folder_image_) { 67 if (!folder_image_) {
70 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); 68 ResourceBundle& rb = ResourceBundle::GetSharedInstance();
71 folder_image_.reset( 69 folder_image_.reset(
72 rb.GetNativeImageNamed(IDR_BOOKMARK_BAR_FOLDER).CopyNSImage()); 70 rb.GetNativeImageNamed(IDR_BOOKMARK_BAR_FOLDER).CopyNSImage());
73 } 71 }
74 72
75 ClearBookmarkMenu(bookmark_menu); 73 ClearBookmarkMenu(bookmark_menu);
76 74
77 // Add at most one separator for the bookmark bar and the managed and 75 // Add at most one separator for the bookmark bar and the managed and
78 // supervised bookmarks folders. 76 // supervised bookmarks folders.
79 ChromeBookmarkClient* client =
80 ChromeBookmarkClientFactory::GetForProfile(profile_);
81 const BookmarkNode* barNode = model->bookmark_bar_node(); 77 const BookmarkNode* barNode = model->bookmark_bar_node();
82 const BookmarkNode* managedNode = client->managed_node(); 78 const BookmarkNode* managedNode = model->managed_node();
83 const BookmarkNode* supervisedNode = client->supervised_node(); 79 const BookmarkNode* supervisedNode = model->supervised_node();
84 if (!barNode->empty() || !managedNode->empty() || !supervisedNode->empty()) 80 if (!barNode->empty() || !managedNode->empty() || !supervisedNode->empty())
85 [bookmark_menu addItem:[NSMenuItem separatorItem]]; 81 [bookmark_menu addItem:[NSMenuItem separatorItem]];
86 if (!managedNode->empty()) { 82 if (!managedNode->empty()) {
87 // Most users never see this node, so the image is only loaded if needed. 83 // Most users never see this node, so the image is only loaded if needed.
88 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); 84 ResourceBundle& rb = ResourceBundle::GetSharedInstance();
89 NSImage* image = 85 NSImage* image =
90 rb.GetNativeImageNamed(IDR_BOOKMARK_BAR_FOLDER_MANAGED).ToNSImage(); 86 rb.GetNativeImageNamed(IDR_BOOKMARK_BAR_FOLDER_MANAGED).ToNSImage();
91 AddNodeAsSubmenu(bookmark_menu, managedNode, image, !is_submenu); 87 AddNodeAsSubmenu(bookmark_menu, managedNode, image, !is_submenu);
92 } 88 }
93 if (!supervisedNode->empty()) { 89 if (!supervisedNode->empty()) {
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after
361 357
362 NSMenuItem* BookmarkMenuBridge::MenuItemForNode(const BookmarkNode* node) { 358 NSMenuItem* BookmarkMenuBridge::MenuItemForNode(const BookmarkNode* node) {
363 if (!node) 359 if (!node)
364 return nil; 360 return nil;
365 std::map<const BookmarkNode*, NSMenuItem*>::iterator it = 361 std::map<const BookmarkNode*, NSMenuItem*>::iterator it =
366 bookmark_nodes_.find(node); 362 bookmark_nodes_.find(node);
367 if (it == bookmark_nodes_.end()) 363 if (it == bookmark_nodes_.end())
368 return nil; 364 return nil;
369 return it->second; 365 return it->second;
370 } 366 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698