Revision: emacs--inactive-window-highlight--0--patch-1 Archive: lorentey@elte.hu--2004 Creator: Karoly Lorentey Date: Tue Nov 1 05:53:07 CET 2005 Standard-date: 2005-11-01 04:53:07 GMT Modified-files: lisp/faces.el src/dispextern.h src/dispnew.c src/fringe.c src/window.c src/xdisp.c src/xfaces.c New-patches: lorentey@elte.hu--2004/emacs--inactive-window-highlight--0--patch-1 Summary: Allow non-selected windows to have a different background color. Keywords: * lisp/faces.el (default-inactive): Define. * src/dispextern.h (WINDOW_DEFAULT_FACE_ID): New macro. * src/dispextern.h (enum face_id): Add INACTIVE_DEFAULT_FACE_ID. * src/dispnew.c (update_frame_line): Force colored spaces when `default-inactive' has a non-default background color. * src/xdisp.c (display_line): Call extend_face_to_end_of_line for lines at/after ZV, too. * src/xdisp.c (init_iterator): Update docs. Handle DEFAULT_FACE_ID and INACTIVE_DEFAULT_FACE_ID the same way. Use WINDOW_DEFAULT_FACE_ID in init_iterator calls. * src/dispnew.c (spec_glyph_lookup_face, direct_output_for_insert): Use WINDOW_DEFAULT_FACE_ID instead of a direct reference to DEFAULT_FACE_ID. * src/fringe.c (draw_fringe_bitmap_1, update_window_fringes) (window_scroll_pixel_based): Ditto. * src/xdisp.c (start_display, init_from_display_pos, handle_face_prop) (setup_for_ellipsis, handle_single_display_spec, set_buffer_internal) (resize_mini_window, x_consider_frame_title, redisplay_internal) (compute_window_start_on_continuation_line, redisplay_window) (redisplay_window, get_overlay_arrow_glyph_row) (insert_left_trunc_glyphs, append_space_for_newline, display_menu_bar) (display_mode_line, Fformat_mode_line) (set_glyph_string_background_width): Ditto. * src/xfaces.c (face_at_buffer_position, face_at_string_position): Ditto. * src/xfaces.c (Qdefault_inactive): Define. * src/xfaces.c (syms_of_xfaces): Initialize and staticpro it. * src/xfaces.c (Finternal_set_lisp_face_attribute): Handle Qdefault_inactive the same way as Qdefault. * src/xfaces.c (lookup_named_face): Add note on possible bug. * src/xfaces.c (realize_named_face): Also realize the face using `default-inactive'. (Disabled, feels wrong.) * src/xfaces.c (realize_default_face_internal): New function. * src/xfaces.c (realize_default_face): Call it twice to realize `default-inactive' as well as `default'.