diff options
author | sky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-16 15:43:12 +0000 |
---|---|---|
committer | sky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-16 15:43:12 +0000 |
commit | 151e7e7c5150adee1a6a680d0bee40c92776acd1 (patch) | |
tree | 5dbc51d6c492b24d4cbf7e17fa4a9ac9c091dd16 /chrome/browser/bookmark_bar_context_menu_controller.cc | |
parent | 4a9f0b17e67d703fa81deeafbd6612fba0d1eba2 (diff) | |
download | chromium_src-151e7e7c5150adee1a6a680d0bee40c92776acd1.zip chromium_src-151e7e7c5150adee1a6a680d0bee40c92776acd1.tar.gz chromium_src-151e7e7c5150adee1a6a680d0bee40c92776acd1.tar.bz2 |
Makes the following changes to the bookmark bar context menu:
. Nukes the open menu item.
. Adds open incognito and for folders open all incognito.
BUG=144
TEST=Fully test the context menu of bookmark folders/urls.
Review URL: http://codereview.chromium.org/7357
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3464 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/bookmark_bar_context_menu_controller.cc')
-rw-r--r-- | chrome/browser/bookmark_bar_context_menu_controller.cc | 96 |
1 files changed, 49 insertions, 47 deletions
diff --git a/chrome/browser/bookmark_bar_context_menu_controller.cc b/chrome/browser/bookmark_bar_context_menu_controller.cc index 75d33b8..12b2566 100644 --- a/chrome/browser/bookmark_bar_context_menu_controller.cc +++ b/chrome/browser/bookmark_bar_context_menu_controller.cc @@ -193,18 +193,6 @@ class EditFolderController : public InputWindowDelegate, // BookmarkBarContextMenuController ------------------------------------------- -const int BookmarkBarContextMenuController::always_show_command_id = 1; -const int BookmarkBarContextMenuController::open_bookmark_id = 2; -const int BookmarkBarContextMenuController::open_bookmark_in_new_window_id = 3; -const int BookmarkBarContextMenuController::open_bookmark_in_new_tab_id = 4; -const int BookmarkBarContextMenuController::open_all_bookmarks_id = 5; -const int - BookmarkBarContextMenuController::open_all_bookmarks_in_new_window_id = 6; -const int BookmarkBarContextMenuController::edit_bookmark_id = 7; -const int BookmarkBarContextMenuController::delete_bookmark_id = 8; -const int BookmarkBarContextMenuController::add_bookmark_id = 9; -const int BookmarkBarContextMenuController::new_folder_id = 10; - // static void BookmarkBarContextMenuController::OpenAll( HWND parent, @@ -227,41 +215,44 @@ BookmarkBarContextMenuController::BookmarkBarContextMenuController( menu_(this) { if (node->GetType() == history::StarredEntry::URL) { menu_.AppendMenuItemWithLabel( - open_bookmark_id, - l10n_util::GetString(IDS_BOOMARK_BAR_OPEN)); - menu_.AppendMenuItemWithLabel( - open_bookmark_in_new_tab_id, + IDS_BOOMARK_BAR_OPEN_IN_NEW_TAB, l10n_util::GetString(IDS_BOOMARK_BAR_OPEN_IN_NEW_TAB)); menu_.AppendMenuItemWithLabel( - open_bookmark_in_new_window_id, + IDS_BOOMARK_BAR_OPEN_IN_NEW_WINDOW, l10n_util::GetString(IDS_BOOMARK_BAR_OPEN_IN_NEW_WINDOW)); + menu_.AppendMenuItemWithLabel( + IDS_BOOMARK_BAR_OPEN_INCOGNITO, + l10n_util::GetString(IDS_BOOMARK_BAR_OPEN_INCOGNITO)); } else { menu_.AppendMenuItemWithLabel( - open_all_bookmarks_id, + IDS_BOOMARK_BAR_OPEN_ALL, l10n_util::GetString(IDS_BOOMARK_BAR_OPEN_ALL)); menu_.AppendMenuItemWithLabel( - open_all_bookmarks_in_new_window_id, + IDS_BOOMARK_BAR_OPEN_ALL_NEW_WINDOW, l10n_util::GetString(IDS_BOOMARK_BAR_OPEN_ALL_NEW_WINDOW)); + menu_.AppendMenuItemWithLabel( + IDS_BOOMARK_BAR_OPEN_ALL_INCOGNITO, + l10n_util::GetString(IDS_BOOMARK_BAR_OPEN_ALL_INCOGNITO)); } menu_.AppendSeparator(); if (node->GetParent() != view->GetProfile()->GetBookmarkModel()->root_node()) { - menu_.AppendMenuItemWithLabel(edit_bookmark_id, + menu_.AppendMenuItemWithLabel(IDS_BOOKMARK_BAR_EDIT, l10n_util::GetString(IDS_BOOKMARK_BAR_EDIT)); menu_.AppendMenuItemWithLabel( - delete_bookmark_id, + IDS_BOOKMARK_BAR_REMOVE, l10n_util::GetString(IDS_BOOKMARK_BAR_REMOVE)); } menu_.AppendMenuItemWithLabel( - add_bookmark_id, + IDS_BOOMARK_BAR_ADD_NEW_BOOKMARK, l10n_util::GetString(IDS_BOOMARK_BAR_ADD_NEW_BOOKMARK)); menu_.AppendMenuItemWithLabel( - new_folder_id, + IDS_BOOMARK_BAR_NEW_FOLDER, l10n_util::GetString(IDS_BOOMARK_BAR_NEW_FOLDER)); menu_.AppendSeparator(); - menu_.AppendMenuItem(always_show_command_id, + menu_.AppendMenuItem(IDS_BOOMARK_BAR_ALWAYS_SHOW, l10n_util::GetString(IDS_BOOMARK_BAR_ALWAYS_SHOW), ChromeViews::MenuItemView::CHECKBOX); } @@ -289,14 +280,15 @@ void BookmarkBarContextMenuController::ExecuteCommand(int id) { Profile* profile = view_->GetProfile(); switch (id) { - case open_bookmark_id: - UserMetrics::RecordAction(L"BookmarkBar_ContextMenu_Open", profile); + case IDS_BOOMARK_BAR_OPEN_INCOGNITO: + UserMetrics::RecordAction(L"BookmarkBar_ContextMenu_OpenInIncognito", + profile); - view_->GetPageNavigator()->OpenURL(node_->GetURL(), CURRENT_TAB, + view_->GetPageNavigator()->OpenURL(node_->GetURL(), OFF_THE_RECORD, PageTransition::AUTO_BOOKMARK); break; - case open_bookmark_in_new_window_id: + case IDS_BOOMARK_BAR_OPEN_IN_NEW_WINDOW: UserMetrics::RecordAction(L"BookmarkBar_ContextMenu_OpenInNewWindow", profile); @@ -304,7 +296,7 @@ void BookmarkBarContextMenuController::ExecuteCommand(int id) { PageTransition::AUTO_BOOKMARK); break; - case open_bookmark_in_new_tab_id: + case IDS_BOOMARK_BAR_OPEN_IN_NEW_TAB: UserMetrics::RecordAction(L"BookmarkBar_ContextMenu_OpenInNewTab", profile); @@ -312,22 +304,24 @@ void BookmarkBarContextMenuController::ExecuteCommand(int id) { PageTransition::AUTO_BOOKMARK); break; - case open_all_bookmarks_id: - case open_all_bookmarks_in_new_window_id: { - if (id == open_all_bookmarks_id) { + case IDS_BOOMARK_BAR_OPEN_ALL: + case IDS_BOOMARK_BAR_OPEN_ALL_INCOGNITO: + case IDS_BOOMARK_BAR_OPEN_ALL_NEW_WINDOW: { + WindowOpenDisposition initial_disposition; + if (id == IDS_BOOMARK_BAR_OPEN_ALL) { + initial_disposition = CURRENT_TAB; UserMetrics::RecordAction(L"BookmarkBar_ContextMenu_OpenAll", profile); - } else { + } else if (id == IDS_BOOMARK_BAR_OPEN_ALL_NEW_WINDOW) { + initial_disposition = NEW_WINDOW; UserMetrics::RecordAction( L"BookmarkBar_ContextMenu_OpenAllInNewWindow", profile); + } else { + initial_disposition = OFF_THE_RECORD; + UserMetrics::RecordAction( + L"BookmarkBar_ContextMenu_OpenAllIncognito", profile); } - WindowOpenDisposition initial_disposition; - if (id == open_all_bookmarks_in_new_window_id) - initial_disposition = NEW_WINDOW; - else - initial_disposition = CURRENT_TAB; - // GetContainer is NULL during testing. HWND parent_hwnd = view_->GetContainer() ? view_->GetContainer()->GetHWND() : 0; @@ -337,7 +331,7 @@ void BookmarkBarContextMenuController::ExecuteCommand(int id) { break; } - case edit_bookmark_id: + case IDS_BOOKMARK_BAR_EDIT: UserMetrics::RecordAction(L"BookmarkBar_ContextMenu_Edit", profile); if (node_->GetType() == history::StarredEntry::URL) { @@ -351,7 +345,7 @@ void BookmarkBarContextMenuController::ExecuteCommand(int id) { } break; - case delete_bookmark_id: { + case IDS_BOOKMARK_BAR_REMOVE: { UserMetrics::RecordAction(L"BookmarkBar_ContextMenu_Remove", profile); view_->GetModel()->Remove(node_->GetParent(), @@ -359,7 +353,7 @@ void BookmarkBarContextMenuController::ExecuteCommand(int id) { break; } - case add_bookmark_id: { + case IDS_BOOMARK_BAR_ADD_NEW_BOOKMARK: { UserMetrics::RecordAction(L"BookmarkBar_ContextMenu_Add", profile); BookmarkEditorView::Show(view_->GetContainer()->GetHWND(), @@ -367,7 +361,7 @@ void BookmarkBarContextMenuController::ExecuteCommand(int id) { break; } - case new_folder_id: { + case IDS_BOOMARK_BAR_NEW_FOLDER: { UserMetrics::RecordAction(L"BookmarkBar_ContextMenu_NewFolder", profile); @@ -382,7 +376,7 @@ void BookmarkBarContextMenuController::ExecuteCommand(int id) { break; } - case always_show_command_id: + case IDS_BOOMARK_BAR_ALWAYS_SHOW: view_->ToggleWhenVisible(); break; @@ -392,14 +386,22 @@ void BookmarkBarContextMenuController::ExecuteCommand(int id) { } bool BookmarkBarContextMenuController::IsItemChecked(int id) const { - DCHECK(id == always_show_command_id); + DCHECK(id == IDS_BOOMARK_BAR_ALWAYS_SHOW); return view_->GetProfile()->GetPrefs()->GetBoolean(prefs::kShowBookmarkBar); } bool BookmarkBarContextMenuController::IsCommandEnabled(int id) const { - if (id == open_all_bookmarks_id || id == open_all_bookmarks_in_new_window_id) - return NodeHasURLs(node_); + switch (id) { + case IDS_BOOMARK_BAR_OPEN_INCOGNITO: + return !view_->GetProfile()->IsOffTheRecord(); + case IDS_BOOMARK_BAR_OPEN_ALL_INCOGNITO: + return NodeHasURLs(node_) && !view_->GetProfile()->IsOffTheRecord(); + + case IDS_BOOMARK_BAR_OPEN_ALL: + case IDS_BOOMARK_BAR_OPEN_ALL_NEW_WINDOW: + return NodeHasURLs(node_); + } return true; } |