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

Unified Diff: chrome/browser/ui/views/bookmarks/bookmark_editor_view.cc

Issue 9814031: views/bookmarks: Convert BookmarkEditorView from Menu2 API to MenuModelApdater/MenuRunner API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix win Created 8 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/ui/views/bookmarks/bookmark_editor_view.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/views/bookmarks/bookmark_editor_view.cc
diff --git a/chrome/browser/ui/views/bookmarks/bookmark_editor_view.cc b/chrome/browser/ui/views/bookmarks/bookmark_editor_view.cc
index 5443eba5de98e43aa46a1ae6dd906ccafb22f26a..62d095c2cc9b44af1e2d9a9c5c7fd6eb8e8c63ea 100644
--- a/chrome/browser/ui/views/bookmarks/bookmark_editor_view.cc
+++ b/chrome/browser/ui/views/bookmarks/bookmark_editor_view.cc
@@ -26,7 +26,8 @@
#include "ui/views/background.h"
#include "ui/views/controls/button/text_button.h"
#include "ui/views/controls/label.h"
-#include "ui/views/controls/menu/menu_2.h"
+#include "ui/views/controls/menu/menu_model_adapter.h"
+#include "ui/views/controls/menu/menu_runner.h"
#include "ui/views/controls/textfield/textfield.h"
#include "ui/views/controls/tree/tree_view.h"
#include "ui/views/focus/focus_manager.h"
@@ -287,20 +288,14 @@ void BookmarkEditorView::ShowContextMenuForView(views::View* source,
running_menu_for_root_ =
(tree_model_->GetParent(tree_view_->GetSelectedNode()) ==
tree_model_->GetRoot());
-#if defined(USE_AURA)
- NOTIMPLEMENTED();
-#else
- if (!context_menu_contents_.get()) {
- context_menu_contents_.reset(new ui::SimpleMenuModel(this));
- context_menu_contents_->AddItemWithStringId(IDS_EDIT, IDS_EDIT);
- context_menu_contents_->AddItemWithStringId(IDS_DELETE, IDS_DELETE);
- context_menu_contents_->AddItemWithStringId(
- IDS_BOOKMARK_EDITOR_NEW_FOLDER_MENU_ITEM,
- IDS_BOOKMARK_EDITOR_NEW_FOLDER_MENU_ITEM);
- context_menu_.reset(new views::Menu2(context_menu_contents_.get()));
- }
- context_menu_->RunContextMenuAt(point);
-#endif
+
+ views::MenuModelAdapter adapter(GetMenuModel());
+ context_menu_runner_.reset(new views::MenuRunner(adapter.CreateMenu()));
+
+ if (context_menu_runner_->RunMenuAt(source->GetWidget()->GetTopLevelWidget(),
+ NULL, gfx::Rect(point, gfx::Size()), views::MenuItemView::TOPRIGHT,
+ views::MenuRunner::HAS_MNEMONICS) == views::MenuRunner::MENU_DELETED)
+ return;
}
void BookmarkEditorView::Init() {
@@ -467,9 +462,7 @@ void BookmarkEditorView::Reset() {
tree_view_->SetModel(tree_model_.get());
tree_view_->SetController(this);
-#if !defined(USE_AURA)
- context_menu_.reset();
-#endif
+ context_menu_runner_.reset();
if (parent())
ExpandAndSelect();
@@ -669,6 +662,18 @@ void BookmarkEditorView::UpdateExpandedNodes(
UpdateExpandedNodes(editor_node->GetChild(i), expanded_nodes);
}
+ui::SimpleMenuModel* BookmarkEditorView::GetMenuModel() {
+ if (!context_menu_model_.get()) {
+ context_menu_model_.reset(new ui::SimpleMenuModel(this));
+ context_menu_model_->AddItemWithStringId(IDS_EDIT, IDS_EDIT);
+ context_menu_model_->AddItemWithStringId(IDS_DELETE, IDS_DELETE);
+ context_menu_model_->AddItemWithStringId(
+ IDS_BOOKMARK_EDITOR_NEW_FOLDER_MENU_ITEM,
+ IDS_BOOKMARK_EDITOR_NEW_FOLDER_MENU_ITEM);
+ }
+ return context_menu_model_.get();
+}
+
void BookmarkEditorView::EditorTreeModel::SetTitle(ui::TreeModelNode* node,
const string16& title) {
if (!title.empty())
« no previous file with comments | « chrome/browser/ui/views/bookmarks/bookmark_editor_view.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698