Index: chrome/browser/ui/toolbar/wrench_menu_model.cc |
diff --git a/chrome/browser/ui/toolbar/wrench_menu_model.cc b/chrome/browser/ui/toolbar/wrench_menu_model.cc |
index f785a58771c2939d21e7efa1f15b492082c4406f..c6c77d2a670a84539d9787bdd9e6eb86e7f56449 100644 |
--- a/chrome/browser/ui/toolbar/wrench_menu_model.cc |
+++ b/chrome/browser/ui/toolbar/wrench_menu_model.cc |
@@ -218,7 +218,11 @@ WrenchMenuModel::WrenchMenuModel(ui::AcceleratorProvider* provider, |
provider_(provider), |
browser_(browser), |
tabstrip_model_(browser_->tabstrip_model()) { |
- Build(); |
+#if defined(OS_CHROMEOS) |
+ BuildCrosMenu(); |
+#else |
+ BuildBrowserMenu(); |
+#endif |
UpdateZoomControls(); |
tabstrip_model_->AddObserver(this); |
@@ -406,15 +410,10 @@ WrenchMenuModel::WrenchMenuModel() |
tabstrip_model_(NULL) { |
} |
-void WrenchMenuModel::Build() { |
+void WrenchMenuModel::BuildBrowserMenu() { |
AddItemWithStringId(IDC_NEW_TAB, IDS_NEW_TAB); |
AddItemWithStringId(IDC_NEW_WINDOW, IDS_NEW_WINDOW); |
-#if defined(OS_CHROMEOS) |
- if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kGuestSession)) |
- AddItemWithStringId(IDC_NEW_INCOGNITO_WINDOW, IDS_NEW_INCOGNITO_WINDOW); |
-#else |
AddItemWithStringId(IDC_NEW_INCOGNITO_WINDOW, IDS_NEW_INCOGNITO_WINDOW); |
-#endif |
AddSeparator(); |
#if defined(OS_POSIX) && !defined(TOOLKIT_VIEWS) |
@@ -469,7 +468,6 @@ void WrenchMenuModel::Build() { |
AddItemWithStringId(IDC_SHOW_DOWNLOADS, IDS_SHOW_DOWNLOADS); |
AddSeparator(); |
-#if !defined(OS_CHROMEOS) |
if (browser_->profile()->GetOriginalProfile()->IsSyncAccessible()) { |
const string16 short_product_name = |
l10n_util::GetStringUTF16(IDS_SHORT_PRODUCT_NAME); |
@@ -477,11 +475,8 @@ void WrenchMenuModel::Build() { |
IDS_SHOW_SYNC_SETUP, short_product_name)); |
AddSeparator(); |
} |
-#endif |
-#if defined(OS_CHROMEOS) |
- AddItemWithStringId(IDC_OPTIONS, IDS_SETTINGS); |
-#elif defined(OS_MACOSX) |
+#if defined(OS_MACOSX) |
AddItemWithStringId(IDC_OPTIONS, IDS_PREFERENCES); |
#elif defined(TOOLKIT_USES_GTK) |
string16 preferences = gtk_util::GetStockPreferencesMenuLabel(); |
@@ -493,11 +488,7 @@ void WrenchMenuModel::Build() { |
AddItemWithStringId(IDC_OPTIONS, IDS_OPTIONS); |
#endif |
-#if defined(OS_CHROMEOS) |
- const string16 product_name = l10n_util::GetStringUTF16(IDS_PRODUCT_OS_NAME); |
-#else |
const string16 product_name = l10n_util::GetStringUTF16(IDS_PRODUCT_NAME); |
-#endif |
AddItem(IDC_ABOUT, l10n_util::GetStringFUTF16(IDS_ABOUT, product_name)); |
string16 num_background_pages = base::FormatNumber( |
TaskManager::GetBackgroundPageCount()); |
@@ -515,27 +506,74 @@ void WrenchMenuModel::Build() { |
#endif |
AddItemWithStringId(IDC_HELP_PAGE, IDS_HELP_PAGE); |
-#if defined(OS_CHROMEOS) |
- ResourceBundle& rb = ResourceBundle::GetSharedInstance(); |
+ |
+ if (browser_defaults::kShowExitMenuItem) { |
+ AddSeparator(); |
+ AddItemWithStringId(IDC_EXIT, IDS_EXIT); |
+ } |
+} |
+ |
+void WrenchMenuModel::BuildCrosMenu() { |
+#if !defined(TOUCH_UI) |
+ AddItemWithStringId(IDC_NEW_TAB, IDS_NEW_TAB); |
+ AddItemWithStringId(IDC_NEW_WINDOW, IDS_NEW_WINDOW); |
+ if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kGuestSession)) |
+ AddItemWithStringId(IDC_NEW_INCOGNITO_WINDOW, IDS_NEW_INCOGNITO_WINDOW); |
+ |
+ AddSeparator(); |
+ CreateCutCopyPaste(); |
+ |
+ AddSeparator(); |
+ CreateZoomFullscreen(); |
+ |
+ AddSeparator(); |
+ AddItemWithStringId(IDC_SAVE_PAGE, IDS_SAVE_PAGE); |
+#endif // !TOUCH_UI |
+ AddItemWithStringId(IDC_FIND, IDS_FIND); |
+ AddItemWithStringId(IDC_PRINT, IDS_PRINT); |
+ |
+ tools_menu_model_.reset(new ToolsMenuModel(this, browser_)); |
+ AddSubMenuWithStringId(IDC_ZOOM_MENU, IDS_TOOLS_MENU, |
+ tools_menu_model_.get()); |
+ |
+ AddSeparator(); |
+ |
+ bookmark_sub_menu_model_.reset(new BookmarkSubMenuModel(this, browser_)); |
+ AddSubMenuWithStringId(IDC_BOOKMARKS_MENU, IDS_BOOKMARKS_MENU, |
+ bookmark_sub_menu_model_.get()); |
+ AddItemWithStringId(IDC_SHOW_HISTORY, IDS_SHOW_HISTORY); |
+#if !defined(TOUCH_UI) |
+ AddItemWithStringId(IDC_SHOW_DOWNLOADS, IDS_SHOW_DOWNLOADS); |
+#endif // !TOUCH_UI |
+ AddSeparator(); |
+ |
+ AddItemWithStringId(IDC_OPTIONS, IDS_SETTINGS); |
+ const string16 product_name = l10n_util::GetStringUTF16(IDS_PRODUCT_OS_NAME); |
+ AddItem(IDC_ABOUT, l10n_util::GetStringFUTF16(IDS_ABOUT, product_name)); |
+ string16 num_background_pages = base::FormatNumber( |
+ TaskManager::GetBackgroundPageCount()); |
+ AddItem(IDC_VIEW_BACKGROUND_PAGES, |
+ l10n_util::GetStringFUTF16(IDS_VIEW_BACKGROUND_PAGES, |
+ num_background_pages)); |
+ AddItem(IDC_UPGRADE_DIALOG, |
+ l10n_util::GetStringFUTF16(IDS_UPDATE_NOW, product_name)); |
+ AddItem(IDC_VIEW_INCOMPATIBILITIES, |
+ l10n_util::GetStringUTF16(IDS_VIEW_INCOMPATIBILITIES)); |
+ |
// Use an icon for IDC_HELP_PAGE menu item. |
+ AddItemWithStringId(IDC_HELP_PAGE, IDS_HELP_PAGE); |
+ ResourceBundle& rb = ResourceBundle::GetSharedInstance(); |
SetIcon(GetIndexOfCommandId(IDC_HELP_PAGE), |
*rb.GetBitmapNamed(IDR_HELP_MENU)); |
// Show IDC_FEEDBACK in top-tier wrench menu for ChromeOS. |
AddItemWithStringId(IDC_FEEDBACK, IDS_FEEDBACK); |
-#endif |
+ AddSeparator(); |
- if (browser_defaults::kShowExitMenuItem) { |
- AddSeparator(); |
-#if defined(OS_CHROMEOS) |
- if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kGuestSession)) { |
- AddItemWithStringId(IDC_EXIT, IDS_EXIT_GUEST_MODE); |
- } else { |
- AddItemWithStringId(IDC_EXIT, IDS_SIGN_OUT); |
- } |
-#else |
- AddItemWithStringId(IDC_EXIT, IDS_EXIT); |
-#endif |
+ if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kGuestSession)) { |
+ AddItemWithStringId(IDC_EXIT, IDS_EXIT_GUEST_MODE); |
+ } else { |
+ AddItemWithStringId(IDC_EXIT, IDS_SIGN_OUT); |
} |
} |