aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Nevins <jacobn@chiark.greenend.org.uk>2009-03-01 13:51:32 +0000
committerJacob Nevins <jacobn@chiark.greenend.org.uk>2009-03-01 13:51:32 +0000
commit99ca11bf8b255bb75721f95d900064490ce18356 (patch)
treedef5aade1d44e6b9d82792fd2895f54d23fcee80
parentcc7024b43367b959ec0ab2b6a225623c5d29bb8b (diff)
downloadpuzzles-99ca11bf8b255bb75721f95d900064490ce18356.zip
puzzles-99ca11bf8b255bb75721f95d900064490ce18356.tar.gz
puzzles-99ca11bf8b255bb75721f95d900064490ce18356.tar.bz2
puzzles-99ca11bf8b255bb75721f95d900064490ce18356.tar.xz
Make menus accessible from the keyboard in the Gtk front-end.
[originally from svn r8486]
-rw-r--r--gtk.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/gtk.c b/gtk.c
index 960077a..5761e8d 100644
--- a/gtk.c
+++ b/gtk.c
@@ -546,6 +546,10 @@ static gint key_event(GtkWidget *widget, GdkEventKey *event, gpointer data)
return TRUE;
#endif
+ /* Handle mnemonics. */
+ if (gtk_window_activate_key(GTK_WINDOW(fe->window), event))
+ return TRUE;
+
if (event->keyval == GDK_Up)
keyval = shift | ctrl | CURSOR_UP;
else if (event->keyval == GDK_KP_Up || event->keyval == GDK_KP_8)
@@ -1675,7 +1679,7 @@ static frontend *new_window(char *arg, int argtype, char **error)
gtk_box_pack_start(vbox, menubar, FALSE, FALSE, 0);
gtk_widget_show(menubar);
- menuitem = gtk_menu_item_new_with_label("Game");
+ menuitem = gtk_menu_item_new_with_mnemonic("_Game");
gtk_container_add(GTK_CONTAINER(menubar), menuitem);
gtk_widget_show(menuitem);
@@ -1710,7 +1714,7 @@ static frontend *new_window(char *arg, int argtype, char **error)
GtkWidget *submenu;
int i;
- menuitem = gtk_menu_item_new_with_label("Type");
+ menuitem = gtk_menu_item_new_with_mnemonic("_Type");
gtk_container_add(GTK_CONTAINER(menubar), menuitem);
gtk_widget_show(menuitem);
@@ -1790,7 +1794,7 @@ static frontend *new_window(char *arg, int argtype, char **error)
add_menu_separator(GTK_CONTAINER(menu));
add_menu_item_with_key(fe, GTK_CONTAINER(menu), "Exit", 'q');
- menuitem = gtk_menu_item_new_with_label("Help");
+ menuitem = gtk_menu_item_new_with_mnemonic("_Help");
gtk_container_add(GTK_CONTAINER(menubar), menuitem);
gtk_widget_show(menuitem);