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

Side by Side Diff: chrome/browser/ui/browser.cc

Issue 8983012: Get rid of content::NavigationController in cc file and use "using" instead. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 11 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
« no previous file with comments | « chrome/browser/ui/auto_login_prompter.cc ('k') | chrome/browser/ui/browser_browsertest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/ui/browser.h" 5 #include "chrome/browser/ui/browser.h"
6 6
7 #if defined(OS_WIN) 7 #if defined(OS_WIN)
8 #include <windows.h> 8 #include <windows.h>
9 #include <shellapi.h> 9 #include <shellapi.h>
10 #endif // OS_WIN 10 #endif // OS_WIN
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 200
201 #if !defined(OS_CHROMEOS) || defined(USE_AURA) 201 #if !defined(OS_CHROMEOS) || defined(USE_AURA)
202 #include "chrome/browser/download/download_shelf.h" 202 #include "chrome/browser/download/download_shelf.h"
203 #endif 203 #endif
204 204
205 #if defined(FILE_MANAGER_EXTENSION) 205 #if defined(FILE_MANAGER_EXTENSION)
206 #include "chrome/browser/extensions/file_manager_util.h" 206 #include "chrome/browser/extensions/file_manager_util.h"
207 #endif 207 #endif
208 208
209 using base::TimeDelta; 209 using base::TimeDelta;
210 using content::NavigationController;
210 using content::NavigationEntry; 211 using content::NavigationEntry;
211 using content::OpenURLParams; 212 using content::OpenURLParams;
212 using content::PluginService; 213 using content::PluginService;
213 using content::Referrer; 214 using content::Referrer;
214 using content::SSLStatus; 215 using content::SSLStatus;
215 using content::UserMetricsAction; 216 using content::UserMetricsAction;
216 using content::WebContents; 217 using content::WebContents;
217 218
218 /////////////////////////////////////////////////////////////////////////////// 219 ///////////////////////////////////////////////////////////////////////////////
219 220
(...skipping 952 matching lines...) Expand 10 before | Expand all | Expand 10 after
1172 1173
1173 int Browser::tab_count() const { 1174 int Browser::tab_count() const {
1174 return tab_handler_->GetTabStripModel()->count(); 1175 return tab_handler_->GetTabStripModel()->count();
1175 } 1176 }
1176 1177
1177 int Browser::active_index() const { 1178 int Browser::active_index() const {
1178 return tab_handler_->GetTabStripModel()->active_index(); 1179 return tab_handler_->GetTabStripModel()->active_index();
1179 } 1180 }
1180 1181
1181 int Browser::GetIndexOfController( 1182 int Browser::GetIndexOfController(
1182 const content::NavigationController* controller) const { 1183 const NavigationController* controller) const {
1183 return tab_handler_->GetTabStripModel()->GetIndexOfController(controller); 1184 return tab_handler_->GetTabStripModel()->GetIndexOfController(controller);
1184 } 1185 }
1185 1186
1186 TabContentsWrapper* Browser::GetSelectedTabContentsWrapper() const { 1187 TabContentsWrapper* Browser::GetSelectedTabContentsWrapper() const {
1187 return tabstrip_model()->GetActiveTabContents(); 1188 return tabstrip_model()->GetActiveTabContents();
1188 } 1189 }
1189 1190
1190 WebContents* Browser::GetSelectedWebContents() const { 1191 WebContents* Browser::GetSelectedWebContents() const {
1191 TabContentsWrapper* wrapper = GetSelectedTabContentsWrapper(); 1192 TabContentsWrapper* wrapper = GetSelectedTabContentsWrapper();
1192 return wrapper ? wrapper->web_contents() : NULL; 1193 return wrapper ? wrapper->web_contents() : NULL;
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
1366 tab_handler_->GetTabStripModel()->active_index(), 1367 tab_handler_->GetTabStripModel()->active_index(),
1367 wrapper); 1368 wrapper);
1368 } 1369 }
1369 1370
1370 bool Browser::CanRestoreTab() { 1371 bool Browser::CanRestoreTab() {
1371 return command_updater_.IsCommandEnabled(IDC_RESTORE_TAB); 1372 return command_updater_.IsCommandEnabled(IDC_RESTORE_TAB);
1372 } 1373 }
1373 1374
1374 bool Browser::NavigateToIndexWithDisposition(int index, 1375 bool Browser::NavigateToIndexWithDisposition(int index,
1375 WindowOpenDisposition disp) { 1376 WindowOpenDisposition disp) {
1376 content::NavigationController& controller = 1377 NavigationController& controller =
1377 GetOrCloneTabForDisposition(disp)->GetController(); 1378 GetOrCloneTabForDisposition(disp)->GetController();
1378 if (index < 0 || index >= controller.GetEntryCount()) 1379 if (index < 0 || index >= controller.GetEntryCount())
1379 return false; 1380 return false;
1380 controller.GoToIndex(index); 1381 controller.GoToIndex(index);
1381 return true; 1382 return true;
1382 } 1383 }
1383 1384
1384 browser::NavigateParams Browser::GetSingletonTabNavigateParams( 1385 browser::NavigateParams Browser::GetSingletonTabNavigateParams(
1385 const GURL& url) { 1386 const GURL& url) {
1386 browser::NavigateParams params( 1387 browser::NavigateParams params(
(...skipping 1127 matching lines...) Expand 10 before | Expand all | Expand 10 after
2514 // to proceed closing the page or not, which sends us back to this method 2515 // to proceed closing the page or not, which sends us back to this method
2515 // with the NeedToFireBeforeUnload bit cleared. 2516 // with the NeedToFireBeforeUnload bit cleared.
2516 contents->GetRenderViewHost()->FirePageBeforeUnload(false); 2517 contents->GetRenderViewHost()->FirePageBeforeUnload(false);
2517 return true; 2518 return true;
2518 } 2519 }
2519 return false; 2520 return false;
2520 } 2521 }
2521 2522
2522 // static 2523 // static
2523 Browser* Browser::GetBrowserForController( 2524 Browser* Browser::GetBrowserForController(
2524 const content::NavigationController* controller, int* index_result) { 2525 const NavigationController* controller, int* index_result) {
2525 BrowserList::const_iterator it; 2526 BrowserList::const_iterator it;
2526 for (it = BrowserList::begin(); it != BrowserList::end(); ++it) { 2527 for (it = BrowserList::begin(); it != BrowserList::end(); ++it) {
2527 int index = (*it)->tab_handler_->GetTabStripModel()->GetIndexOfController( 2528 int index = (*it)->tab_handler_->GetTabStripModel()->GetIndexOfController(
2528 controller); 2529 controller);
2529 if (index != TabStripModel::kNoTab) { 2530 if (index != TabStripModel::kNoTab) {
2530 if (index_result) 2531 if (index_result)
2531 *index_result = index; 2532 *index_result = index;
2532 return *it; 2533 return *it;
2533 } 2534 }
2534 } 2535 }
(...skipping 561 matching lines...) Expand 10 before | Expand all | Expand 10 after
3096 // Load the initial URL before adding the new tab contents to the tab strip 3097 // Load the initial URL before adding the new tab contents to the tab strip
3097 // so that the tab contents has navigation state. 3098 // so that the tab contents has navigation state.
3098 contents->tab_contents()->GetController().LoadURL( 3099 contents->tab_contents()->GetController().LoadURL(
3099 url, referrer, transition, std::string()); 3100 url, referrer, transition, std::string());
3100 } 3101 }
3101 3102
3102 return contents; 3103 return contents;
3103 } 3104 }
3104 3105
3105 bool Browser::CanDuplicateContentsAt(int index) { 3106 bool Browser::CanDuplicateContentsAt(int index) {
3106 content::NavigationController& nc = GetTabContentsAt(index)->GetController(); 3107 NavigationController& nc = GetTabContentsAt(index)->GetController();
3107 return nc.GetWebContents() && nc.GetLastCommittedEntry(); 3108 return nc.GetWebContents() && nc.GetLastCommittedEntry();
3108 } 3109 }
3109 3110
3110 void Browser::DuplicateContentsAt(int index) { 3111 void Browser::DuplicateContentsAt(int index) {
3111 TabContentsWrapper* contents = GetTabContentsWrapperAt(index); 3112 TabContentsWrapper* contents = GetTabContentsWrapperAt(index);
3112 CHECK(contents); 3113 CHECK(contents);
3113 TabContentsWrapper* contents_dupe = contents->Clone(); 3114 TabContentsWrapper* contents_dupe = contents->Clone();
3114 3115
3115 bool pinned = false; 3116 bool pinned = false;
3116 if (CanSupportWindowFeature(FEATURE_TABSTRIP)) { 3117 if (CanSupportWindowFeature(FEATURE_TABSTRIP)) {
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
3266 registrar_.Add(this, content::NOTIFICATION_INTERSTITIAL_DETACHED, 3267 registrar_.Add(this, content::NOTIFICATION_INTERSTITIAL_DETACHED,
3267 content::Source<WebContents>(contents->web_contents())); 3268 content::Source<WebContents>(contents->web_contents()));
3268 } 3269 }
3269 3270
3270 void Browser::TabClosingAt(TabStripModel* tab_strip_model, 3271 void Browser::TabClosingAt(TabStripModel* tab_strip_model,
3271 TabContentsWrapper* contents, 3272 TabContentsWrapper* contents,
3272 int index) { 3273 int index) {
3273 fullscreen_controller_->OnTabClosing(contents->tab_contents()); 3274 fullscreen_controller_->OnTabClosing(contents->tab_contents());
3274 content::NotificationService::current()->Notify( 3275 content::NotificationService::current()->Notify(
3275 content::NOTIFICATION_TAB_CLOSING, 3276 content::NOTIFICATION_TAB_CLOSING,
3276 content::Source<content::NavigationController>( 3277 content::Source<NavigationController>(
3277 &contents->web_contents()->GetController()), 3278 &contents->web_contents()->GetController()),
3278 content::NotificationService::NoDetails()); 3279 content::NotificationService::NoDetails());
3279 3280
3280 // Sever the TabContents' connection back to us. 3281 // Sever the TabContents' connection back to us.
3281 SetAsDelegate(contents, NULL); 3282 SetAsDelegate(contents, NULL);
3282 } 3283 }
3283 3284
3284 void Browser::TabDetachedAt(TabContentsWrapper* contents, int index) { 3285 void Browser::TabDetachedAt(TabContentsWrapper* contents, int index) {
3285 TabDetachedAtImpl(contents, index, DETACH_TYPE_DETACH); 3286 TabDetachedAtImpl(contents, index, DETACH_TYPE_DETACH);
3286 } 3287 }
(...skipping 815 matching lines...) Expand 10 before | Expand all | Expand 10 after
4102 4103
4103 case content::NOTIFICATION_SSL_VISIBLE_STATE_CHANGED: 4104 case content::NOTIFICATION_SSL_VISIBLE_STATE_CHANGED:
4104 // When the current tab's SSL state changes, we need to update the URL 4105 // When the current tab's SSL state changes, we need to update the URL
4105 // bar to reflect the new state. Note that it's possible for the selected 4106 // bar to reflect the new state. Note that it's possible for the selected
4106 // tab contents to be NULL. This is because we listen for all sources 4107 // tab contents to be NULL. This is because we listen for all sources
4107 // (NavigationControllers) for convenience, so the notification could 4108 // (NavigationControllers) for convenience, so the notification could
4108 // actually be for a different window while we're doing asynchronous 4109 // actually be for a different window while we're doing asynchronous
4109 // closing of this one. 4110 // closing of this one.
4110 if (GetSelectedWebContents() && 4111 if (GetSelectedWebContents() &&
4111 &GetSelectedWebContents()->GetController() == 4112 &GetSelectedWebContents()->GetController() ==
4112 content::Source<content::NavigationController>(source).ptr()) 4113 content::Source<NavigationController>(source).ptr())
4113 UpdateToolbar(false); 4114 UpdateToolbar(false);
4114 break; 4115 break;
4115 4116
4116 case chrome::NOTIFICATION_EXTENSION_UPDATE_DISABLED: { 4117 case chrome::NOTIFICATION_EXTENSION_UPDATE_DISABLED: {
4117 // Show the UI if the extension was disabled for escalated permissions. 4118 // Show the UI if the extension was disabled for escalated permissions.
4118 Profile* profile = content::Source<Profile>(source).ptr(); 4119 Profile* profile = content::Source<Profile>(source).ptr();
4119 if (profile_->IsSameProfile(profile)) { 4120 if (profile_->IsSameProfile(profile)) {
4120 ExtensionService* service = profile->GetExtensionService(); 4121 ExtensionService* service = profile->GetExtensionService();
4121 DCHECK(service); 4122 DCHECK(service);
4122 const Extension* extension = 4123 const Extension* extension =
(...skipping 466 matching lines...) Expand 10 before | Expand all | Expand 10 after
4589 UpdateCommandsForBookmarkBar(); 4590 UpdateCommandsForBookmarkBar();
4590 } 4591 }
4591 4592
4592 void Browser::UpdateCommandsForTabState() { 4593 void Browser::UpdateCommandsForTabState() {
4593 WebContents* current_tab = GetSelectedWebContents(); 4594 WebContents* current_tab = GetSelectedWebContents();
4594 TabContentsWrapper* current_tab_wrapper = GetSelectedTabContentsWrapper(); 4595 TabContentsWrapper* current_tab_wrapper = GetSelectedTabContentsWrapper();
4595 if (!current_tab || !current_tab_wrapper) // May be NULL during tab restore. 4596 if (!current_tab || !current_tab_wrapper) // May be NULL during tab restore.
4596 return; 4597 return;
4597 4598
4598 // Navigation commands 4599 // Navigation commands
4599 content::NavigationController& nc = current_tab->GetController(); 4600 NavigationController& nc = current_tab->GetController();
4600 command_updater_.UpdateCommandEnabled(IDC_BACK, nc.CanGoBack()); 4601 command_updater_.UpdateCommandEnabled(IDC_BACK, nc.CanGoBack());
4601 command_updater_.UpdateCommandEnabled(IDC_FORWARD, nc.CanGoForward()); 4602 command_updater_.UpdateCommandEnabled(IDC_FORWARD, nc.CanGoForward());
4602 command_updater_.UpdateCommandEnabled(IDC_RELOAD, 4603 command_updater_.UpdateCommandEnabled(IDC_RELOAD,
4603 CanReloadContents(current_tab)); 4604 CanReloadContents(current_tab));
4604 command_updater_.UpdateCommandEnabled(IDC_RELOAD_IGNORING_CACHE, 4605 command_updater_.UpdateCommandEnabled(IDC_RELOAD_IGNORING_CACHE,
4605 CanReloadContents(current_tab)); 4606 CanReloadContents(current_tab));
4606 4607
4607 // Window management commands 4608 // Window management commands
4608 command_updater_.UpdateCommandEnabled(IDC_DUPLICATE_TAB, 4609 command_updater_.UpdateCommandEnabled(IDC_DUPLICATE_TAB,
4609 !is_app() && CanDuplicateContentsAt(active_index())); 4610 !is_app() && CanDuplicateContentsAt(active_index()));
(...skipping 780 matching lines...) Expand 10 before | Expand all | Expand 10 after
5390 window_->GetLocationBar()->ShowFirstRunBubble(bubble_type); 5391 window_->GetLocationBar()->ShowFirstRunBubble(bubble_type);
5391 } else { 5392 } else {
5392 GlobalErrorService* service = 5393 GlobalErrorService* service =
5393 GlobalErrorServiceFactory::GetForProfile(profile()); 5394 GlobalErrorServiceFactory::GetForProfile(profile());
5394 GlobalError* error = service->GetFirstGlobalErrorWithBubbleView(); 5395 GlobalError* error = service->GetFirstGlobalErrorWithBubbleView();
5395 if (error) { 5396 if (error) {
5396 error->ShowBubbleView(this); 5397 error->ShowBubbleView(this);
5397 } 5398 }
5398 } 5399 }
5399 } 5400 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/auto_login_prompter.cc ('k') | chrome/browser/ui/browser_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698