summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk/bookmark_manager_gtk.h
diff options
context:
space:
mode:
authorestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-22 20:40:04 +0000
committerestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-22 20:40:04 +0000
commitb9437d1e6d77bb0b56c2c408b6e172e1c517a87e (patch)
tree9ccac85edb316561289bc678360a866b3899bdfc /chrome/browser/gtk/bookmark_manager_gtk.h
parentd2e884d22945641cc92afa1a7d29329b75809ce8 (diff)
downloadchromium_src-b9437d1e6d77bb0b56c2c408b6e172e1c517a87e.zip
chromium_src-b9437d1e6d77bb0b56c2c408b6e172e1c517a87e.tar.gz
chromium_src-b9437d1e6d77bb0b56c2c408b6e172e1c517a87e.tar.bz2
Rebuild the bookmark context menu from scratch when selection changes.
Since the "remove" item always causes selection to change, we don't have to worry about trying to call remove twice with the same context menu. TEST=see bug. Also, no new crashes on linux. BUG=14443 Review URL: http://codereview.chromium.org/132048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18951 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk/bookmark_manager_gtk.h')
-rw-r--r--chrome/browser/gtk/bookmark_manager_gtk.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/chrome/browser/gtk/bookmark_manager_gtk.h b/chrome/browser/gtk/bookmark_manager_gtk.h
index adb96a5..8678acb 100644
--- a/chrome/browser/gtk/bookmark_manager_gtk.h
+++ b/chrome/browser/gtk/bookmark_manager_gtk.h
@@ -76,6 +76,9 @@ class BookmarkManagerGtk : public BookmarkModelObserver,
void InitWidgets();
GtkWidget* MakeLeftPane();
GtkWidget* MakeRightPane();
+ // If |left|, then make the organize menu refer to that which is selected in
+ // the left pane, otherwise use the right pane selection.
+ void ResetOrganizeMenu(bool left);
// Pack the data from the bookmark model into the stores. This does not
// create the stores, which is done in Make{Left,Right}Pane().
@@ -176,6 +179,12 @@ class BookmarkManagerGtk : public BookmarkModelObserver,
GtkTreePath* path, GtkTreeViewColumn* column,
BookmarkManagerGtk* bookmark_manager);
+ static void OnRightTreeViewFocusIn(GtkTreeView* tree_view,
+ GdkEventFocus* event, BookmarkManagerGtk* bookmark_manager);
+
+ static void OnLeftTreeViewFocusIn(GtkTreeView* tree_view,
+ GdkEventFocus* event, BookmarkManagerGtk* bookmark_manager);
+
// Tools menu item callbacks.
static void OnImportItemActivated(GtkMenuItem* menuitem,
BookmarkManagerGtk* bookmark_manager);
@@ -202,7 +211,12 @@ class BookmarkManagerGtk : public BookmarkModelObserver,
GtkTreeViewColumn* path_column_;
scoped_ptr<BookmarkTableModel> right_tree_model_;
+ // The Organize menu item.
+ GtkWidget* organize_;
+ // The submenu the item pops up.
scoped_ptr<BookmarkContextMenu> organize_menu_;
+ // Whether the menu refers to the left selection.
+ bool organize_is_for_left_;
// Factory used for delaying search.
ScopedRunnableMethodFactory<BookmarkManagerGtk> search_factory_;