aboutsummaryrefslogtreecommitdiffstats
path: root/src/msdos.c
diff options
context:
space:
mode:
authorDaniel Colascione2018-06-07 16:20:06 -0700
committerDaniel Colascione2018-06-07 21:03:30 -0700
commit9d447fa1562c69f2224bdefc37703c0eb0f7d7cf (patch)
treedd1d64edecb820298d433f5537e12835058db362 /src/msdos.c
parente2a98002020369cf0c09c7acf8557290e867705f (diff)
downloademacs-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/msdos.c')
-rw-r--r--src/msdos.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/msdos.c b/src/msdos.c
index eedbf7b1a6c..6c0dfa0c46a 100644
--- a/src/msdos.c
+++ b/src/msdos.c
@@ -3063,15 +3063,15 @@ XMenuActivate (Display *foo, XMenu *menu, int *pane, int *selidx,
3063 state = alloca (menu->panecount * sizeof (struct IT_menu_state)); 3063 state = alloca (menu->panecount * sizeof (struct IT_menu_state));
3064 screensize = screen_size * 2; 3064 screensize = screen_size * 2;
3065 faces[0] 3065 faces[0]
3066 = lookup_derived_face (sf, intern ("msdos-menu-passive-face"), 3066 = lookup_derived_face (NULL, sf, intern ("msdos-menu-passive-face"),
3067 DEFAULT_FACE_ID, 1); 3067 DEFAULT_FACE_ID, 1);
3068 faces[1] 3068 faces[1]
3069 = lookup_derived_face (sf, intern ("msdos-menu-active-face"), 3069 = lookup_derived_face (NULL, sf, intern ("msdos-menu-active-face"),
3070 DEFAULT_FACE_ID, 1); 3070 DEFAULT_FACE_ID, 1);
3071 selectface = intern ("msdos-menu-select-face"); 3071 selectface = intern ("msdos-menu-select-face");
3072 faces[2] = lookup_derived_face (sf, selectface, 3072 faces[2] = lookup_derived_face (NULL, sf, selectface,
3073 faces[0], 1); 3073 faces[0], 1);
3074 faces[3] = lookup_derived_face (sf, selectface, 3074 faces[3] = lookup_derived_face (NULL, sf, selectface,
3075 faces[1], 1); 3075 faces[1], 1);
3076 3076
3077 /* Make sure the menu title is always displayed with 3077 /* Make sure the menu title is always displayed with