diff options
| author | Daniel Colascione | 2018-06-07 16:20:06 -0700 |
|---|---|---|
| committer | Daniel Colascione | 2018-06-07 21:03:30 -0700 |
| commit | 9d447fa1562c69f2224bdefc37703c0eb0f7d7cf (patch) | |
| tree | dd1d64edecb820298d433f5537e12835058db362 /src/term.c | |
| parent | e2a98002020369cf0c09c7acf8557290e867705f (diff) | |
| download | emacs-9d447fa1562c69f2224bdefc37703c0eb0f7d7cf.tar.gz emacs-9d447fa1562c69f2224bdefc37703c0eb0f7d7cf.zip | |
Add support for per-window face remapping
Extend face specifications to support the notion of filtering to a
specific context and add a filter that limits a face specification to
windows having a certain parameter.
* src/xfaces.c:
(evaluate_face_filter,filter_face_ref): New functions.
(merge_face_ref): Ignore filtered face specifications.
(Fx_list_fonts,get_lface_attributes,merge_face_vectors)
(merge_named_face,merge_face_ref,merge_face_ref)
(Finternal_merge_in_global_face,Fface_font,lookup_named_face)
(lookup_basic_face,Fface_attributes_as_vector)
(x_supports_face_attributes_p)
(Fdisplay_supports_face_attributes_p,realize_named_face)
(compute_char_face,face_at_buffer_position)
(face_at_buffer_position,face_at_buffer_position)
(face_at_buffer_position)
(face_for_overlay_string,face_at_string_position,merge_faces):
Pass window to face machinery.
(syms_of_xfaces): Add :window and :filtered
* src/xdisp.c (init_iterator, handle_face_prop)
(handle_single_display_spec, merge_escape_glyph_face)
(merge_glyphless_glyph_face, get_next_display_element)
(next_element_from_display_vector, append_space_for_newline)
(extend_face_to_end_of_line,highlight_trailing_whitespace)
(maybe_produce_line_number)
(display_line, calc_line_height_property): Pass window to
face machinery.
* src/term.c (tty_menu_activate): Adjust to new face core
function signature.
* src/msdos.c (XMenuActivate): Adjust to new face core
function signature.
* src/fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
Pass window to face machinery.
* src/font.c (font_range, Finternal_char_font): Pass window to
face machinery.
* src/dispnew.c (spec_glyph_lookup_face): Pass window to
face machinery.
* src/dispextern.h:
(lookup_named_face,lookup_basic_face)
(lookup_derived_face,merge_faces):
Add struct window arguments to prototypes.
Diffstat (limited to 'src/term.c')
| -rw-r--r-- | src/term.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/term.c b/src/term.c index 08d483f4fa0..bcd7dd82d6f 100644 --- a/src/term.c +++ b/src/term.c | |||
| @@ -3132,15 +3132,15 @@ tty_menu_activate (tty_menu *menu, int *pane, int *selidx, | |||
| 3132 | SAFE_NALLOCA (state, 1, menu->panecount); | 3132 | SAFE_NALLOCA (state, 1, menu->panecount); |
| 3133 | memset (state, 0, sizeof (*state)); | 3133 | memset (state, 0, sizeof (*state)); |
| 3134 | faces[0] | 3134 | faces[0] |
| 3135 | = lookup_derived_face (sf, intern ("tty-menu-disabled-face"), | 3135 | = lookup_derived_face (NULL, sf, intern ("tty-menu-disabled-face"), |
| 3136 | DEFAULT_FACE_ID, 1); | 3136 | DEFAULT_FACE_ID, 1); |
| 3137 | faces[1] | 3137 | faces[1] |
| 3138 | = lookup_derived_face (sf, intern ("tty-menu-enabled-face"), | 3138 | = lookup_derived_face (NULL, sf, intern ("tty-menu-enabled-face"), |
| 3139 | DEFAULT_FACE_ID, 1); | 3139 | DEFAULT_FACE_ID, 1); |
| 3140 | selectface = intern ("tty-menu-selected-face"); | 3140 | selectface = intern ("tty-menu-selected-face"); |
| 3141 | faces[2] = lookup_derived_face (sf, selectface, | 3141 | faces[2] = lookup_derived_face (NULL, sf, selectface, |
| 3142 | faces[0], 1); | 3142 | faces[0], 1); |
| 3143 | faces[3] = lookup_derived_face (sf, selectface, | 3143 | faces[3] = lookup_derived_face (NULL, sf, selectface, |
| 3144 | faces[1], 1); | 3144 | faces[1], 1); |
| 3145 | 3145 | ||
| 3146 | /* Make sure the menu title is always displayed with | 3146 | /* Make sure the menu title is always displayed with |