summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk/bookmark_menu_controller_gtk.cc
diff options
context:
space:
mode:
authorestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-28 01:25:51 +0000
committerestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-28 01:25:51 +0000
commit26426a2af6a18a8e29bdf1eb09bee9f073304d1b (patch)
tree4a00da1c4a688d31807c93a0399a01fb3491842f /chrome/browser/gtk/bookmark_menu_controller_gtk.cc
parent9ecd4839b28694359410478f6fab54ef7221d407 (diff)
downloadchromium_src-26426a2af6a18a8e29bdf1eb09bee9f073304d1b.zip
chromium_src-26426a2af6a18a8e29bdf1eb09bee9f073304d1b.tar.gz
chromium_src-26426a2af6a18a8e29bdf1eb09bee9f073304d1b.tar.bz2
Make BookmarkContextMenuGtk use a SimpleMenuModel. Also separate controller and view responsibilities.
This is the first step in re-merging bookmark context menus across platforms. BUG=32830 TEST=manual Review URL: http://codereview.chromium.org/555142 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37364 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk/bookmark_menu_controller_gtk.cc')
-rw-r--r--chrome/browser/gtk/bookmark_menu_controller_gtk.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/chrome/browser/gtk/bookmark_menu_controller_gtk.cc b/chrome/browser/gtk/bookmark_menu_controller_gtk.cc
index 874ce96..e3bdcb3 100644
--- a/chrome/browser/gtk/bookmark_menu_controller_gtk.cc
+++ b/chrome/browser/gtk/bookmark_menu_controller_gtk.cc
@@ -106,9 +106,8 @@ BookmarkMenuController::BookmarkMenuController(Browser* browser,
}
BookmarkMenuController::~BookmarkMenuController() {
-
- if (context_menu_.get())
- context_menu_->DelegateDestroyed();
+ if (context_menu_controller_.get())
+ context_menu_controller_->DelegateDestroyed();
profile_->GetBookmarkModel()->RemoveObserver(this);
gtk_menu_popdown(GTK_MENU(menu_));
}
@@ -251,17 +250,19 @@ gboolean BookmarkMenuController::OnButtonPressed(
std::vector<const BookmarkNode*> nodes;
if (node)
nodes.push_back(node);
- controller->context_menu_.reset(
+ controller->context_menu_controller_.reset(
new BookmarkContextMenuGtk(
controller->parent_window_, controller->profile_,
controller->browser_, controller->page_navigator_, parent, nodes,
BookmarkContextMenuGtk::BOOKMARK_BAR, controller));
+ controller->context_menu_.reset(
+ new MenuGtk(NULL, controller->context_menu_controller_->menu_model()));
// Our bookmark folder menu loses the grab to the context menu. When the
// context menu is hidden, re-assert our grab.
GtkWidget* grabbing_menu = gtk_grab_get_current();
g_object_ref(grabbing_menu);
- g_signal_connect(controller->context_menu_->menu(), "hide",
+ g_signal_connect(controller->context_menu_->widget(), "hide",
G_CALLBACK(OnContextMenuHide), grabbing_menu);
controller->context_menu_->PopupAsContext(event->time);