Lots of comments fixed.
(SPLIT_MULTIBYTE_SEQ): Make it work also for ASCII string.
(CHAR_COMPONENTS_VALID_P): Name changed from
CHAR_COMPONENT_VALID_P. Caller changed.
(quickurl-list-focused-line): Removed.
(quickurl-list-insert): Now works out the focused line using
`count-lines' instead of using `quickurl-list-focused-line'.
(backward-kill-sentence): Don't test minibuffer-prompt-end here.
(forward-sentence): Do handle it here.
(backward-kill-paragraph): Don't test it here.
(forward-paragraph): Handle it here.
(Fset_window_vscroll): Make window the first argument,
amount to scroll the second. Take non-negative vscroll as
argument.
(Fwindow_vscroll): Return non-negative vscroll.
(Qplay_sound_functions): Replaces Qplay_sound_hook.
(Fplay_sound, syms_of_sound): Use it.
(parse_sound): Allow float volume values in the range [0, 1].
(Fplay_sound): Ditto.
(XTset_vertical_scroll_bar): Block input when clearing
under newly created scroll bar.
(expose_window): If window is not yet fully initialized, do
nothing. This can happen when toolkit scroll bars are used and a
window is split. Reconfiguring the scroll bars will generate an
expose for a newly created window.
(x_alloc_nearest_color_for_widget) [USE_X_TOOLKIT]:
New. Allocate color for lwlib widgets.
(x_alloc_nearest_color): Change parameter list include the
frame on which to allocate colors. Gamma-correct colors.
(x_alloc_lighter_color): Call x_alloc_lighter_color with new
parameter list.
Include math.h. Add extern declaration for atof in case
we don't see one.
(Qscreen_gamma): New.
(struct x_frame_parm_table): Add prototypes, add
x_set_screen_gamma.
(gamma_correct): New function.
(defined_color): Call it.
(x_set_screen_gamma): New.
(x_set_title): Add parameter old_value.
(RES_TYPE_FLOAT): New.
(x_get_arg): Handle RES_TYPE_FLOAT.
(Fx_create_frame): Call x_default_parameter for `screen-gamma'.
(lookup_pixel_color): Change call to x_alloc_nearest_color to
new prototype.
(lookup_rgb_color): Ditto.
(syms_of_xfns): Initialize Qscreen_gamma.
Do nothing if included a second time.
(enum output_method): Add mac_output frame type.
(union output_data): Add new alternative `mac'.
(FRAME_MAC_P): New macro.
Use XCAR and XCDR instead of XCONS.
(Vresize_mini_config, resize_mini_frame,
resize_mini_initial_height): Removed.
(syms_of_xdisp): Remove references to these variables.
(resize_mini_window): Don't save window configuration, freeze
window starts instead. Enlarge window until displaying an empty
buffer, then shrink it. Make the function externally visible.
(redisplay_window): Treat frozen window start like forced start,
but accept point outside of the window.
(x_scroll_bar_create): Don't clear under scroll bar
here.
(XTset_vertical_scroll_bar): Clarify position computations. Clear
under newly created scroll bar. Put toolkit scroll bars in the
middle of the area reserved for the scroll bar.
(count_combining_composition): New function.
(count_combining_before): Adjust the way to check byte-combining
possibility for the new handling of multibyte sequence. Call
count_combining_composition for a composite character.
(count_combining_after): Likewise.
(SPLIT_COMPOSITE_SEQ): New macro.
(SPLIT_CHARACTER_SEQ): New macro.
(SPLIT_MULTIBYTE_SEQ): New macro.
(CHAR_COMPONENT_VALID_P): New macro.
(non_ascii_char_to_string): Generate a multibyte sequence as far
as possible.
(string_to_non_ascii_char): The 4th arg exclude_tail_garbage is
deleted. Caller changed. Use the macro SPLIT_MULTIBYTE_SEQ.
(split_non_ascii_string): Likewise.
(multibyte_form_length): Use the macro PARSE_MULTIBYTE_SEQ.
(char_printable_p): New function.
(translate_char): Check character by NATNUMP instead of INTEGERP.
(unibyte_char_to_multibyte): Call char_valid_p instead of
VALID_MULTIBYTE_CHAR_P.
(Fmake_char_internal): Check the arguments more rigidly.
(Fcharset_after): Use the macro SPLIT_MULTIBYTE_SEQ.
(char_valid_p): Check the validity by CHAR_COMPONENT_VALID_P.
(Fmultibyte_char_to_unibyte): Check the validity of character by
CHAR_VALID_P.
(chars_in_text): Call multibyte_chars_in_text.
(multibyte_chars_in_text): Use the macro PARSE_MULTIBYTE_SEQ.
(Fcompose_string): Use the macro STRING_CHAR_AND_LENGTH instead of
STRING_CHAR_AND_CHAR_LENGTH (which is obsolete now).
(MAKE_NON_ASCII_CHAR): Handle the case that C1 or C2
are negative.
(MAKE_CHAR): Don't set MSBs of C1 and C2 to 0.
(VALID_MULTIBYTE_CHAR_P): This macro deleted.
(PARSE_COMPOSITE_SEQ): New macro.
(PARSE_CHARACTER_SEQ): New macro.
(PARSE_MULTIBYTE_SEQ): New macro.
(CHAR_PRINTABLE_P): New macro.
(STRING_CHAR): Adjusted for the change of string_to_non_ascii_char.
(STRING_CHAR_AND_LENGTH): Likewise.
(STRING_CHAR_AND_CHAR_LENGTH): Define it as STRING_CHAR_AND_LENGTH.
(INC_POS): Use the macro PARSE_MULTIBYTE_SEQ.
(DEC_POS, BUF_INC_POS, BUF_DEC_POS): Likewise,