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

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

Issue 10692195: Consolidate Browser Creation. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 5 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 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.h" 5 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.h"
6 6
7 #include "base/sys_string_conversions.h" 7 #include "base/sys_string_conversions.h"
8 #include "base/utf_string_conversions.h" 8 #include "base/utf_string_conversions.h"
9 #include "chrome/app/chrome_command_ids.h" // IDC_BOOKMARK_MENU 9 #include "chrome/app/chrome_command_ids.h" // IDC_BOOKMARK_MENU
10 #import "chrome/browser/app_controller_mac.h" 10 #import "chrome/browser/app_controller_mac.h"
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 // Return the a BookmarkNode that has the given id (called 88 // Return the a BookmarkNode that has the given id (called
89 // "identifier" here to avoid conflict with objc's concept of "id"). 89 // "identifier" here to avoid conflict with objc's concept of "id").
90 - (const BookmarkNode*)nodeForIdentifier:(int)identifier { 90 - (const BookmarkNode*)nodeForIdentifier:(int)identifier {
91 return bridge_->GetBookmarkModel()->GetNodeByID(identifier); 91 return bridge_->GetBookmarkModel()->GetNodeByID(identifier);
92 } 92 }
93 93
94 // Open the URL of the given BookmarkNode in the current tab. 94 // Open the URL of the given BookmarkNode in the current tab.
95 - (void)openURLForNode:(const BookmarkNode*)node { 95 - (void)openURLForNode:(const BookmarkNode*)node {
96 Browser* browser = browser::FindTabbedBrowser(bridge_->GetProfile(), true); 96 Browser* browser = browser::FindTabbedBrowser(bridge_->GetProfile(), true);
97 if (!browser) 97 if (!browser)
98 browser = Browser::Create(bridge_->GetProfile()); 98 browser = new Browser(Browser::CreateParams(bridge_->GetProfile()));
99 WindowOpenDisposition disposition = 99 WindowOpenDisposition disposition =
100 event_utils::WindowOpenDispositionFromNSEvent([NSApp currentEvent]); 100 event_utils::WindowOpenDispositionFromNSEvent([NSApp currentEvent]);
101 OpenURLParams params( 101 OpenURLParams params(
102 node->url(), Referrer(), disposition, 102 node->url(), Referrer(), disposition,
103 content::PAGE_TRANSITION_AUTO_BOOKMARK, false); 103 content::PAGE_TRANSITION_AUTO_BOOKMARK, false);
104 browser->OpenURL(params); 104 browser->OpenURL(params);
105 } 105 }
106 106
107 // Open sites under BookmarkNode with the specified disposition. 107 // Open sites under BookmarkNode with the specified disposition.
108 - (void)openAll:(NSInteger)tag 108 - (void)openAll:(NSInteger)tag
109 withDisposition:(WindowOpenDisposition)disposition { 109 withDisposition:(WindowOpenDisposition)disposition {
110 int identifier = tag; 110 int identifier = tag;
111 111
112 const BookmarkNode* node = [self nodeForIdentifier:identifier]; 112 const BookmarkNode* node = [self nodeForIdentifier:identifier];
113 DCHECK(node); 113 DCHECK(node);
114 114
115 Browser* browser = browser::FindTabbedBrowser(bridge_->GetProfile(), true); 115 Browser* browser = browser::FindTabbedBrowser(bridge_->GetProfile(), true);
116 if (!browser) 116 if (!browser)
117 browser = Browser::Create(bridge_->GetProfile()); 117 browser = new Browser(Browser::CreateParams(bridge_->GetProfile()));
118 DCHECK(browser); 118 DCHECK(browser);
119 119
120 if (!node || !browser) 120 if (!node || !browser)
121 return; // shouldn't be reached 121 return; // shouldn't be reached
122 122
123 bookmark_utils::OpenAll(NULL, browser, node, disposition); 123 bookmark_utils::OpenAll(NULL, browser, node, disposition);
124 124
125 if (disposition == NEW_FOREGROUND_TAB) { 125 if (disposition == NEW_FOREGROUND_TAB) {
126 content::RecordAction(UserMetricsAction("OpenAllBookmarks")); 126 content::RecordAction(UserMetricsAction("OpenAllBookmarks"));
127 } else if (disposition == NEW_WINDOW) { 127 } else if (disposition == NEW_WINDOW) {
(...skipping 21 matching lines...) Expand all
149 149
150 - (IBAction)openAllBookmarksNewWindow:(id)sender { 150 - (IBAction)openAllBookmarksNewWindow:(id)sender {
151 [self openAll:[sender tag] withDisposition:NEW_WINDOW]; 151 [self openAll:[sender tag] withDisposition:NEW_WINDOW];
152 } 152 }
153 153
154 - (IBAction)openAllBookmarksIncognitoWindow:(id)sender { 154 - (IBAction)openAllBookmarksIncognitoWindow:(id)sender {
155 [self openAll:[sender tag] withDisposition:OFF_THE_RECORD]; 155 [self openAll:[sender tag] withDisposition:OFF_THE_RECORD];
156 } 156 }
157 157
158 @end // BookmarkMenuCocoaController 158 @end // BookmarkMenuCocoaController
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698