(digest_single_submenu): Set lname and lkey in widget_value
instead of name and key.
(update_submenu_strings): New function.
(set_frame_menubar): Remove call to inhibit_garbage_collection,
call update_submenu_strings.
(globals_of_w32menu): Check for Unicode API.
(digest_single_submenu, w32_menu_show): Encode menu strings as
UTF-8 if Unicode API is available.
(utf8to16): New function.
(add_menu_item): Use it when calling Unicode API.
(mode-line-frame-identification): Sync with x-win.el.
* macfns.c (x_real_positions): Save the current window port and
set a new one before obtaining the global coordinate. Use
FRAME_MAC_WINDOW.
(x_set_name, x_set_title): Encode title to UTF8. Use
SetWindowTitleWithCFString.
(Fx_server_version): Get correct OS version.
* macmenu.c (add_menu_item): Remove unused variable `i'. Don't
let separator items destroy refence constants of other menu items.
* macterm.c (x_update_end): Move SetPortWindowPort to inside
BLOCK_INPUT.
(x_set_offset): Use FRAME_MAC_WINDOW.
* xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
nontext_cursor if it is on a scroll bar.
* s/darwin.h (LIBS_CARBON): New define to specify libraries for
Carbon support.
(LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++. Use
LIBS_CARBON.
set a new one before obtaining the global coordinate. Use
FRAME_MAC_WINDOW.
(x_set_name, x_set_title): Encode title to UTF8. Use
SetWindowTitleWithCFString.
(Fx_server_version): Get correct OS version.
(single_submenu): Set lname and lkey in widget_value
instead of name and key.
(update_submenu_strings): New function.
(set_frame_menubar): Remove call to inhibit_garbage_collection,
call update_submenu_strings.
instead of name and key.
(update_submenu_strings): New function.
(set_frame_menubar): Remove call to inhibit_garbage_collection,
call update_submenu_strings. Call ENCODE_MENU_STRING for top level
menu names.
* gtkutil.h (_widget_value): Added lname and lkey.
strings in menu items.
(single_submenu): Use ENCODE_MENU_STRING
(mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
button release isn't passed to event loop
(add_menu_item): Use SetMenuItemWithCFString
Add wait_for_cell, wait_proc, and just_wait_proc args
to avoid overloading `read_kbd' and `do_display' args.
Change read_kbd arg to int. All callers changed.
forward to wait_reading_process_input via DO_DISPLAY arg.
(wait_reading_process_input): If DO_DISPLAY < 0 for a process
object, only process output from that process; also inhibit
running timers if DO_DISPLAY==-2.