summaryrefslogtreecommitdiff
path: root/gtk/gtkmenubutton.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2013-08-18 22:22:22 -0400
committerMatthias Clasen <mclasen@redhat.com>2013-08-18 22:22:22 -0400
commitdc4f555d2591f0a23ccd16b3fa9acf7edf1ceb35 (patch)
treebd63fc079c1819010e119f1db808ca98fcb8348a /gtk/gtkmenubutton.c
parent624ec0fb7d5329261dd0c4a991c7889a70c61535 (diff)
downloadgtk+-dc4f555d2591f0a23ccd16b3fa9acf7edf1ceb35.tar.gz
Fix keyboard activation of menu buttons
Keyboard activation relies on the menu not being visible, so ensure that it isn't when the menu is attached. Problem tracked down by Vincent Le Garrec, https://bugzilla.gnome.org/show_bug.cgi?id=688738
Diffstat (limited to 'gtk/gtkmenubutton.c')
-rw-r--r--gtk/gtkmenubutton.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/gtk/gtkmenubutton.c b/gtk/gtkmenubutton.c
index 3c852b6140..d185a310cf 100644
--- a/gtk/gtkmenubutton.c
+++ b/gtk/gtkmenubutton.c
@@ -655,10 +655,7 @@ _gtk_menu_button_set_popup_with_func (GtkMenuButton *menu_button
{
if (gtk_widget_get_visible (GTK_WIDGET (priv->popup)))
gtk_menu_shell_deactivate (GTK_MENU_SHELL (priv->popup));
- }
- if (priv->popup)
- {
g_signal_handlers_disconnect_by_func (priv->popup,
menu_deactivate_cb,
menu_button);
@@ -672,6 +669,7 @@ _gtk_menu_button_set_popup_with_func (GtkMenuButton *menu_button
gtk_menu_attach_to_widget (GTK_MENU (priv->popup), GTK_WIDGET (menu_button),
menu_detacher);
+ gtk_widget_set_visible (priv->popup, FALSE);
gtk_widget_set_sensitive (GTK_WIDGET (menu_button), TRUE);
g_signal_connect (priv->popup, "deactivate",