(x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
(mac_query_char_extents): New function.
(x_per_char_metric): Use it.
(XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
[USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Use
mac_per_char_metric instead of x_per_char_metric.
(mac_text_extents_16): New function.
(mac_compute_glyph_string_overhangs): Use it.
(mac_unload_font): Free member `bounds' in struct MacFontStruct.
(STORE_XCHARSTRUCT): Don't set member `valid_p'.
(XCharStructRow): New typedef.
(XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID): New
macros.
(struct MacFontStruct): Add member `bounds'. Remove member
`per_char'. All uses for QuichDraw Text fonts are changed to
`bounds.per_char'. ATSUI font bounds are represented as an array
`bounds.rows' of XCharStructRow's, each of which consists of a
bitmap of valid entries and an array of char bounds.
(set_frame_menubar, mac_menu_show keymp_panes)
(single_keymap_panes, list_of_panes, list_of_item)
(single_menu_item): Add argument types to prototypes.
(mac_dialog_show) [HAVE_DIALOGS]: Likewise.
(struct skp): New struct (from xmenu.c).
(single_keymap_panes, single_menu_item, list_of_panes)
(list_of_item): Sync with xmenu.c.
(Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
POSITION if it is mac-apple-event event.
(menubar_selection_callback): Don't use menu_command_in_progress.
(set_frame_menubar): First parse all submenus, then make
widget_value trees from them. Don't allocate any widget_value
objects until we are done with the parsing.
(parse_single_submenu, digest_single_submenu): New functions.
(single_submenu): Function deleted, replaced by those two.
(install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
create or dispose of EventHandlerUPP. Install hander to all submenus.
(mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
instead of ENCODE_SYSTEM.
(free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
integer values.
[HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
(add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
format menu item string. Don't use NULL for integer value.
stored in member `args' of struct input_event.
(x_use_underline_position_properties): Undo 2005-07-13 change.
(syms_of_macterm) <x-use-underline-position-properties>: Likewise.
(mac_use_core_graphics, mac_wheel_button_is_mouse_2)
(mac_pass_command_to_system, mac_pass_control_to_system): New
boolean variables renamed from Lisp_Object ones
Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
Vmac_pass_command_to_system, and Vmac_pass_control_to_system. All
uses changed.
(syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
Make them user options.
(mac_handle_command_event, mac_store_services_event): Call
create_apple_event_from_event_ref without 5th argument.
(backtranslate_modified_keycode): Mask off modifier keys that are
mapped to some Emacs modifiers before passing it to KeyTranslate.
(syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
`mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
Fix docstrings of `mac-*-modifier'.
created from minibuffer_completion_contents.
(minibuffer_completion_contents): Remove.
(do_completion, Fminibuffer_complete_word)
(Fminibuffer_completion_help): Replace minibuffer_completion_contents
with Fminibuffer_completion_contents.
(syms_of_minibuf): Add Sminibuffer_completion_contents.
(Fdisplay_completion_list): Doc fix.
(display_completion_list_1): Use `nil' for second arg of
`Fdisplay_completion_list'.
(xg_get_image_for_pixmap, xg_create_frame_widgets)
(xg_get_file_with_chooser): Use SSDATA instead of SDATA.
* xmenu.c (menubar_selection_callback): Do nothing if the callback
is for an unselected radio menu item.
instead of using `nil' as second arg of `Fdisplay_completion_list'.
(keys_of_minibuf): Unbind SPC in Vminibuffer_local_filename_completion_map
(see also related change on 2005-12-06).