* termhooks.h (P_): Remove redundant def.
(struct terminal): New field `image_cache'.
* frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
of FRAME_X_IMAGE_CACHE.
* xterm.h (struct x_display_info): Remove image_cache field.
(FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
* w32term.h (struct w32_display_info): Remove image_cache field.
(FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
* macterm.h (struct mac_display_info): Remove image_cache field.
(FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
* xterm.c (x_term_init):
* w32term.c (w32_term_init):
* macterm.c (mac_term_init): Set the image_cache in the terminal.
* dispextern.h (clear_image_cache, forall_images_in_image_cache):
Remove declarations.
(clear_image_caches, mark_image_cache): New declarations.
* xfaces.c (clear_face_cache):
* xdisp.c (redisplay_internal): Use clear_image_caches.
* image.c (clear_image_cache): Don't check that a frame is on
a window-system before checking if it shares the same cache.
(clear_image_caches): New function.
(Fclear_image_cache): Use it.
(mark_image): Move from allo.c.
(mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
* alloc.c (mark_image, mark_image_cache): Move to image.c.
(mark_object): Don't call mark_image_cache for frames.
(mark_terminals): Call mark_image_cache.
* startup.el (command-line): Use custom-reevaluate-setting for
transient-mark-mode.
* callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
with Qt.
[HAVE_NTGUI]: Include w32term.h.
[MAC_OS]: Include macterm.ch.
(font_otf_ValueRecord): Use make_number.
(font_finish_cache): Fix handling of reference count.
(font_clear_cache): Update num_fonts.
(font_open_entity): Update smallest_char_width and
smallest_font_height of the frame.
(font_close_object): Update num_fonts.
(Fclear_font_cache): Fix finding the target cache data.
(fontset_find_font): Update font-object list of the fontset.
(free_realized_fontset): New function.
(free_face_fontset): Call free_realized_fontset.
(Ffont_info): Call font_close_object only when enable_font_backend
is set.
characte of the composed region.
(fill_composite_glyph_string): Set base_face->font_info to
s->font_info. Get a face for ascii from base_face->ascii_face.
(BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
with a face already decided.
(x_produce_glyphs): Be sure to set it->ascent and it->descent to
non-negative.
(x_produce_glyphs): If the composition method is
..._WITH_GLYPH_STRING, call font_prepare_composition
unconditionally.
for GCs.
(Finternal_set_font_selection_order): Call font_update_sort_order
only when enable_font_backend is set.
(realize_x_face): Set face->font_info to that of default face only
when enable_font_backend is set.