diff --git a/collects/mred/private/wx/gtk/menu-bar.rkt b/collects/mred/private/wx/gtk/menu-bar.rkt index de8824c47c..ce1e887f2b 100644 --- a/collects/mred/private/wx/gtk/menu-bar.rkt +++ b/collects/mred/private/wx/gtk/menu-bar.rkt @@ -135,7 +135,9 @@ (define (append-menu menu title) (send menu set-parent this) (atomically - (let* ([item (gtk_menu_item_new_with_mnemonic (fixup-mneumonic title))] + (let* ([item (let ([title (fixup-mneumonic title)]) + (as-gtk-allocation + (gtk_menu_item_new_with_mnemonic title)))] [item-wx (new top-menu% [parent this] [gtk item])]) (connect-select item) (set! menus (append menus (list (list item menu item-wx)))) diff --git a/collects/mred/private/wx/gtk/menu.rkt b/collects/mred/private/wx/gtk/menu.rkt index f7f4f97348..42cd4e0733 100644 --- a/collects/mred/private/wx/gtk/menu.rkt +++ b/collects/mred/private/wx/gtk/menu.rkt @@ -182,11 +182,13 @@ (public [append-item append]) (define (append-item i label help-str-or-submenu chckable?) (atomically - (let ([item-gtk ((if (and chckable? - (not (help-str-or-submenu . is-a? . menu%))) - gtk_check_menu_item_new_with_mnemonic - gtk_menu_item_new_with_mnemonic) - (fixup-mneumonic label))]) + (let ([item-gtk (let ([label (fixup-mneumonic label)]) + (as-gtk-allocation + ((if (and chckable? + (not (help-str-or-submenu . is-a? . menu%))) + gtk_check_menu_item_new_with_mnemonic + gtk_menu_item_new_with_mnemonic) + label)))]) (if (help-str-or-submenu . is-a? . menu%) (let ([submenu help-str-or-submenu]) (let ([gtk (send submenu get-gtk)]) @@ -208,7 +210,7 @@ (define/public (append-separator) (atomically - (let ([item-gtk (gtk_separator_menu_item_new)]) + (let ([item-gtk (as-gtk-allocation (gtk_separator_menu_item_new))]) (set! items (append items (list (list (new separator-item-handler%) item-gtk #f #f)))) (gtk_menu_shell_append gtk item-gtk) (gtk_widget_show item-gtk))))