summaryrefslogtreecommitdiff
path: root/gtk/gtkmenushell.c
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2002-04-11 14:28:11 +0000
committerOwen Taylor <otaylor@src.gnome.org>2002-04-11 14:28:11 +0000
commit03498ba24f32b68ae7d717724c5e27260559fcef (patch)
tree57d5853aa39486a9da9171b1182bd4112557969f /gtk/gtkmenushell.c
parent631b8da93e5f6d571e67f9508d14f019191f8f12 (diff)
downloadgdk-pixbuf-03498ba24f32b68ae7d717724c5e27260559fcef.tar.gz
Export private _gtk_menu_shell_activate() to encapsulate cut-and-paste
Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export private _gtk_menu_shell_activate() to encapsulate cut-and-paste code. * gtk/gtkmenubar.c: Select the first item on the menu bar for F10 rather than acting as if the user pressed <Alt>F to select the file manager.
Diffstat (limited to 'gtk/gtkmenushell.c')
-rw-r--r--gtk/gtkmenushell.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/gtk/gtkmenushell.c b/gtk/gtkmenushell.c
index dac8ed4db..f90f56fbf 100644
--- a/gtk/gtkmenushell.c
+++ b/gtk/gtkmenushell.c
@@ -440,6 +440,17 @@ gtk_menu_shell_realize (GtkWidget *widget)
gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL);
}
+void
+_gtk_menu_shell_activate (GtkMenuShell *menu_shell)
+{
+ if (!menu_shell->active)
+ {
+ gtk_grab_add (GTK_WIDGET (menu_shell));
+ menu_shell->have_grab = TRUE;
+ menu_shell->active = TRUE;
+ }
+}
+
static gint
gtk_menu_shell_button_press (GtkWidget *widget,
GdkEventButton *event)
@@ -461,12 +472,8 @@ gtk_menu_shell_button_press (GtkWidget *widget,
}
else if (!menu_shell->active || !menu_shell->button)
{
- if (!menu_shell->active)
- {
- gtk_grab_add (GTK_WIDGET (widget));
- menu_shell->have_grab = TRUE;
- menu_shell->active = TRUE;
- }
+ _gtk_menu_shell_activate (menu_shell);
+
menu_shell->button = event->button;
menu_item = gtk_menu_shell_get_item (menu_shell, (GdkEvent *)event);