From de5eafede29f9c39e51fd78bc183fed60fe04a52 Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Wed, 21 Mar 2001 18:58:28 +0000 Subject: Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and removed 2001-03-21 Alexander Larsson * gtk/gtkbutton.[ch]: * gtk/gtkdialog.c: Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and removed accel_group argument. Renamed gtk_button_new_accel() to gtk_button_new_with_mnemonic() and removed accel_group argument. * gtk/gtkcheckbutton.[ch]: New function gtk_check_button_new_with_mnemonic(). * gtk/gtkentry.c: Override activate_mnemonic and just grab focus. * gtk/gtkitemfactory.c: Don't add menu uline accel group, instead use mnemonics support. * gtk/gtklabel.[ch]: New support for mnemonics. * gtk/gtkmarshal.list: Needed BOOLEAN:BOOLEAN for activate_mnemonic. * gtk/gtkmenu.[c]: * gtkmenushell.c: Use mnemonics instead of accel groups for uline support in menu items. Removed gtk_menu_get_uline_accel_group() and gtk_menu_ensure_uline_accel_group(). * gtk/gtkmenuitem.c: Override activate_mnemonic to handle switching between menu items if there are collisions. * gtk/gtknotebook.c: Connect to activate_mnemonic on the tab_label, so that activating it switches to that notebook page. * gtk/gtkwidget.[ch]: Add activate_mnemonic signal. New function gtk_widget_activate_mnemonic() to emit it. Default implementation does activate/grab_focus. * gtk/gtkwindow.[ch]: Add support for mnemonics in windows. New functions: gtk_window_add_mnemonic, gtk_window_remove_mnemonic, gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier * gtk/testgtk.c: Update to function name changes. --- gtk/gtkmenushell.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'gtk/gtkmenushell.c') diff --git a/gtk/gtkmenushell.c b/gtk/gtkmenushell.c index a59acf4a28..cdd00988c3 100644 --- a/gtk/gtkmenushell.c +++ b/gtk/gtkmenushell.c @@ -31,7 +31,7 @@ #include "gtktearoffmenuitem.h" /* FIXME */ #include "gtkmenushell.h" #include "gtksignal.h" - +#include "gtkwindow.h" #define MENU_SHELL_TIMEOUT 500 @@ -551,6 +551,7 @@ gtk_menu_shell_key_press (GtkWidget *widget, GdkEventKey *event) { GtkMenuShell *menu_shell; + GtkWidget *toplevel; g_return_val_if_fail (widget != NULL, FALSE); g_return_val_if_fail (GTK_IS_MENU_SHELL (widget), FALSE); @@ -566,6 +567,13 @@ gtk_menu_shell_key_press (GtkWidget *widget, event->state)) return TRUE; + toplevel = gtk_widget_get_toplevel (widget); + if (GTK_IS_WINDOW (toplevel) && + gtk_window_activate_mnemonic (GTK_WINDOW (toplevel), + event->keyval, + event->state)) + return TRUE; + if (gtk_accel_groups_activate (GTK_OBJECT (widget), event->keyval, event->state)) return TRUE; -- cgit v1.2.1