* xfaces.c (Fmake_face_internal): Do nothing for non-X frames.
authorJim Blandy <jimb@redhat.com>
Mon, 10 May 1993 00:25:17 +0000 (00:25 +0000)
committerJim Blandy <jimb@redhat.com>
Mon, 10 May 1993 00:25:17 +0000 (00:25 +0000)
commitcb637678719546cb3fe7eb1ab4d86486f18953c8
tree3ce85335bca78a55e247880e60664a9ccf405daa
parent31b245519739f916ec9e4ccb8274262aff879c69
* xfaces.c (Fmake_face_internal): Do nothing for non-X frames.

* dispextern.h (struct face): Add cached_index member.
* xfaces.c (get_cached_face): Use it to avoid unnecessary
searches of face_vector.

* xfaces.c (intern_face): Renamed from get_display_face.

* xfns.c (x_make_gc): After building the GC's for the frame, call
init_frame_faces to set up the first two faces.
* xfaces.c (init_frame_faces): Don't just try to copy the default
and mode line faces from some other random frame; instead, consult
the normal_gc and reverse_gc members of the frame, and build the
faces based on their parameters.

Adjust the face computation functions to return frame face ID's,
not pointers to display faces; since we call these functions
during display construction, we don't want the display faces yet.
* xfaces.c (intern_frame_face): New function.
(compute_char_face, compute_glyph_face): Apply intern_frame_face
to the computed face, and return the frame face's ID, instead of
calling intern_face and returning a pointer to a display frame.

* xfaces.c: Describe the facial data structures.  It took me a
while to figure them out; perhaps this will save someone else the
trouble.

* xfaces.c (get_display_face): Use face_eql instead of writing it out.
src/xfaces.c