X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fmenubar-x.c;h=62122813bbcc5c475b026fe2502ff1301012c1ec;hb=313d1c4d8bd1f94564e5edda76ee6aac3ecb70fd;hp=36c1344b9d1795a0e87f3ac81ce7d1a2e5fc2c55;hpb=cb9f6f4eadc44f1becb32cbbd1db26449e347755;p=chise%2Fxemacs-chise.git- diff --git a/src/menubar-x.c b/src/menubar-x.c index 36c1344..6212281 100644 --- a/src/menubar-x.c +++ b/src/menubar-x.c @@ -131,7 +131,8 @@ menu_item_descriptor_to_widget_value_1 (Lisp_Object desc, } else if (VECTORP (desc)) { - if (!button_item_to_widget_value (desc, wv, 1, + Lisp_Object gui_item = gui_parse_item_keywords (desc); + if (!button_item_to_widget_value (gui_item, wv, 1, (menu_type == MENUBAR_TYPE && depth <= 1))) { @@ -157,7 +158,7 @@ menu_item_descriptor_to_widget_value_1 (Lisp_Object desc, wv->enabled = 1; wv->name = (char *) XSTRING_DATA (LISP_GETTEXT (XCAR (desc))); - accel = menu_name_to_accelerator (wv->name); + accel = gui_name_accelerator (LISP_GETTEXT (XCAR (desc))); wv->accel = LISP_TO_VOID (accel); desc = Fcdr (desc); @@ -465,10 +466,12 @@ pre_activate_callback (Widget widget, LWLIB_ID id, XtPointer client_data) wv = xmalloc_widget_value (); wv->type = CASCADE_TYPE; wv->next = NULL; + wv->accel = LISP_TO_VOID (Qnil); wv->contents = xmalloc_widget_value (); wv->contents->type = TEXT_TYPE; wv->contents->name = (char *) "No menu"; wv->contents->next = NULL; + wv->contents->accel = LISP_TO_VOID (Qnil); } assert (wv && wv->type == CASCADE_TYPE && wv->contents); replace_widget_value_tree (hack_wv, wv->contents); @@ -572,7 +575,7 @@ set_frame_menubar (struct frame *f, int deep_p, int first_time_p) if (NILP (FRAME_MENUBAR_DATA (f))) { struct popup_data *mdata = - alloc_lcrecord_type (struct popup_data, lrecord_popup_data); + alloc_lcrecord_type (struct popup_data, &lrecord_popup_data); mdata->id = new_lwlib_id (); mdata->last_menubar_buffer = Qnil;