summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk/bookmark_menu_controller_gtk.h
diff options
context:
space:
mode:
authorestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-08 23:12:27 +0000
committerestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-08 23:12:27 +0000
commit57c959f989ccc8f6a9e47190294ee2b9e22c2fb2 (patch)
tree11dd554882323cae5f46a93b8818d0fb2b892901 /chrome/browser/gtk/bookmark_menu_controller_gtk.h
parent973ef240d6f7feec8bfd5c9a65a6273414de283f (diff)
downloadchromium_src-57c959f989ccc8f6a9e47190294ee2b9e22c2fb2.zip
chromium_src-57c959f989ccc8f6a9e47190294ee2b9e22c2fb2.tar.gz
chromium_src-57c959f989ccc8f6a9e47190294ee2b9e22c2fb2.tar.bz2
Make bookmark bar folder buttons look active so long as the menu is open.
Make sure chrome buttons have no child displacement (so the contents don't jiggle when you press them). BUG=none TEST=do a click on a folder, click away, make sure the button always looks as you'd expect Review URL: http://codereview.chromium.org/149355 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20203 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk/bookmark_menu_controller_gtk.h')
-rw-r--r--chrome/browser/gtk/bookmark_menu_controller_gtk.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/chrome/browser/gtk/bookmark_menu_controller_gtk.h b/chrome/browser/gtk/bookmark_menu_controller_gtk.h
index d24dcf2..63788f1 100644
--- a/chrome/browser/gtk/bookmark_menu_controller_gtk.h
+++ b/chrome/browser/gtk/bookmark_menu_controller_gtk.h
@@ -34,7 +34,7 @@ class BookmarkMenuController : public BaseBookmarkModelObserver {
bool show_other_folder);
virtual ~BookmarkMenuController();
- // Pops up the menu.
+ // Pops up the menu. |widget| must be a GtkChromeButton.
void Popup(GtkWidget* widget, gint button_type, guint32 timestamp);
// Overridden from BaseBookmarkModelObserver:
@@ -64,6 +64,10 @@ class BookmarkMenuController : public BaseBookmarkModelObserver {
GdkEventButton* event,
BookmarkMenuController* controller);
+ // We have to stop drawing |triggering_widget_| as active when the menu
+ // closes.
+ static void OnMenuHidden(GtkWidget* menu, BookmarkMenuController* controller);
+
// We respond to the activate signal because things other than mouse button
// events can trigger it.
static void OnMenuItemActivated(GtkMenuItem* menuitem,
@@ -105,6 +109,9 @@ class BookmarkMenuController : public BaseBookmarkModelObserver {
// dragging).
bool ignore_button_release_;
+ // The widget we are showing for (i.e. the bookmark bar folder button).
+ GtkWidget* triggering_widget_;
+
// Mapping from node to GtkMenuItem menu id. This only contains entries for
// nodes of type URL.
std::map<const BookmarkNode*, GtkWidget*> node_to_menu_widget_map_;