Index: trunk/src_plugins/hid_gtk/ghid-main-menu.c =================================================================== --- trunk/src_plugins/hid_gtk/ghid-main-menu.c (revision 1516) +++ trunk/src_plugins/hid_gtk/ghid-main-menu.c (revision 1517) @@ -308,7 +308,7 @@ } /*! \brief Turn a lihata node into a popup menu */ -void ghid_main_menu_add_popup_node(GHidMainMenu * menu, const lht_node_t *base) +void ghid_main_menu_add_popup_node(GHidMainMenu * menu, lht_node_t *base) { lht_node_t *submenu, *i; GtkWidget *new_menu; @@ -321,6 +321,7 @@ new_menu = gtk_menu_new(); g_object_ref_sink(new_menu); + base->user_data = new_menu; for(i = submenu->data.list.first; i != NULL; i = i->next) ghid_main_menu_real_add_node(menu, GTK_MENU_SHELL(new_menu), i); Index: trunk/src_plugins/hid_gtk/ghid-main-menu.h =================================================================== --- trunk/src_plugins/hid_gtk/ghid-main-menu.h (revision 1516) +++ trunk/src_plugins/hid_gtk/ghid-main-menu.h (revision 1517) @@ -26,7 +26,7 @@ void ghid_main_menu_update_toggle_state(GHidMainMenu * menu, void (*cb) (GtkAction *, const char *toggle_flag, const char *active_flag)); -void ghid_main_menu_add_popup_node(GHidMainMenu * menu, const lht_node_t *base); +void ghid_main_menu_add_popup_node(GHidMainMenu * menu, lht_node_t *base); GtkMenu *ghid_main_menu_get_popup(GHidMainMenu * menu, const char *name); void ghid_main_menu_install_layer_selector(GHidMainMenu * mm, GHidLayerSelector * ls);