| Index: chrome/browser/gtk/menu_gtk.cc
|
| diff --git a/chrome/browser/gtk/menu_gtk.cc b/chrome/browser/gtk/menu_gtk.cc
|
| index af6c4e96e78b77866eb0a6dd193253e1985d7334..6b38c3cd944c916c82755ec0b10bc2b581d20db2 100644
|
| --- a/chrome/browser/gtk/menu_gtk.cc
|
| +++ b/chrome/browser/gtk/menu_gtk.cc
|
| @@ -73,8 +73,10 @@ GdkPixbuf* GdkPixbufFromSkBitmap(const SkBitmap* bitmap) {
|
| } // namespace
|
|
|
| MenuGtk::MenuGtk(MenuGtk::Delegate* delegate,
|
| - const MenuCreateMaterial* menu_data)
|
| + const MenuCreateMaterial* menu_data,
|
| + GtkAccelGroup* accel_group)
|
| : delegate_(delegate),
|
| + accel_group_(accel_group),
|
| menu_(gtk_menu_new()) {
|
| g_object_ref_sink(menu_);
|
| BuildMenuIn(menu_, menu_data);
|
| @@ -146,6 +148,18 @@ void MenuGtk::BuildMenuIn(GtkWidget* menu,
|
| gtk_menu_item_set_submenu(GTK_MENU_ITEM(menu_item), submenu);
|
| }
|
|
|
| + if (menu_data->accel_key) {
|
| + // If we ever want to let the user do any key remaping, we'll need to
|
| + // change the following so we make a gtk_accel_map which keeps the actual
|
| + // keys.
|
| + gtk_widget_add_accelerator(menu_item,
|
| + "activate",
|
| + accel_group_,
|
| + menu_data->accel_key,
|
| + GdkModifierType(menu_data->accel_modifiers),
|
| + GTK_ACCEL_VISIBLE);
|
| + }
|
| +
|
| g_object_set_data(G_OBJECT(menu_item), "menu-data",
|
| const_cast<MenuCreateMaterial*>(menu_data));
|
|
|
|
|