Index: chrome/browser/ui/browser.cc |
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc |
index eb0de467d47c792456f10530ac82a837c5270528..bf3514fe724e2dee451d5e51923a085c828bccf3 100644 |
--- a/chrome/browser/ui/browser.cc |
+++ b/chrome/browser/ui/browser.cc |
@@ -1885,6 +1885,11 @@ void Browser::SelectLastTab() { |
tab_handler_->GetTabStripModel()->SelectLastTab(); |
} |
+void Browser::SelectNextMRUTab() { |
+ content::RecordAction(UserMetricsAction("SelectNextMRUTab")); |
+ tab_handler_->GetTabStripModel()->SelectNextMRUTab(); |
+} |
+ |
void Browser::DuplicateTab() { |
content::RecordAction(UserMetricsAction("Duplicate")); |
DuplicateContentsAt(active_index()); |
@@ -3249,6 +3254,8 @@ void Browser::ExecuteCommandWithDisposition( |
break; |
case IDC_TOGGLE_SPEECH_INPUT: ToggleSpeechInput(); break; |
+ case IDC_SELECT_NEXT_MRU_TAB: SelectNextMRUTab(); break; |
+ |
default: |
LOG(WARNING) << "Received Unimplemented Command: " << id; |
break; |
@@ -3475,7 +3482,6 @@ bool Browser::LargeIconsPermitted() const { |
/////////////////////////////////////////////////////////////////////////////// |
// Browser, TabStripModelObserver implementation: |
- |
void Browser::TabInsertedAt(TabContentsWrapper* contents, |
int index, |
bool foreground) { |
@@ -4780,6 +4786,8 @@ void Browser::InitCommandState() { |
command_updater_.UpdateCommandEnabled(IDC_SELECT_NEXT_TAB, normal_window); |
command_updater_.UpdateCommandEnabled(IDC_SELECT_PREVIOUS_TAB, |
normal_window); |
+ command_updater_.UpdateCommandEnabled(IDC_SELECT_NEXT_MRU_TAB, |
+ normal_window); |
command_updater_.UpdateCommandEnabled(IDC_MOVE_TAB_NEXT, normal_window); |
command_updater_.UpdateCommandEnabled(IDC_MOVE_TAB_PREVIOUS, normal_window); |
command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_0, normal_window); |