(kbd_buffer_store_event, clear_event, Fdiscard_input)
(stuff_buffered_input, init_keyboard, syms_of_keyboard):
Don't intitialize and/or maintain the variable any more. It was made
redundant by my commit of 2003-06-15.
Make fringe-drawing stuff compile without a window-system
* src/xdisp.c (Voverflow_newline_into_fringe)
(move_it_in_display_line_to, redisplay_internal)
(update_window_fringes, redisplay_window, display_line, window):
Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
that it compiles without a window-system.
* src/dispnew.c (direct_output_for_insert, update_window): Likewise.
(x_after_update_window_line): Just set redraw_fringe_bitmaps_p
in row instead of actually drawing fringe bitmaps.
(x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
(x_draw_window_cursor): Draw cursor in fringe.
(IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
(move_it_in_display_line_to): Overflow newline into fringe for
rows that are exactly as wide as the window.
(up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
(filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
(hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
(fringe_bitmaps): Add new bitmaps.
(draw_fringe_bitmap): Make extern. Remove WHICH arg.
Select proper bitmap for cursor in fringe when appropriate.
Handle alignment of bitmap to top or bottom of row.
(draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
done by update_window_fringes.
(update_window_fringes, draw_window_fringes): New functions.
(redisplay_internal): Call update_window_fringes in case only
cursor row is updated.
(redisplay_window): Call update_window_fringes.
Explicitly call draw_window_fringes if redisplay was done using
the current matrix or the overlay arrow is in the window.
(try_window_reusing_current_matrix): Mark scrolled rows for
fringe update (to update buffer-boundaries / scrolling icons).
(find_last_unchanged_at_beg_row): Handle exact width lines line
continued lines.
(display_line): Overflow newline into fringe for rows that are
exactly as wide as the window. Don't append space for newline
in this case.
(notice_overwritten_cursor): Explicitly clear cursor bitmap
in fringe as if it had been overwritten.
(erase_phys_cursor): Erase cursor bitmap in fringe.
(syms_of_xdisp): Mark show-trailing-whitespace and
void-text-area-pointer as user options.
DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
(x_after_update_window_line): Just set redraw_fringe_bitmaps_p
in row instead of actually drawing fringe bitmaps.
(w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
(w32_draw_window_cursor): Draw cursor in fringe.
(x_after_update_window_line): Just set redraw_fringe_bitmaps_p
in row instead of actually drawing fringe bitmaps.
(x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
(mac_draw_window_cursor): Draw cursor in fringe.
right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
New members exact_window_width_line_p and cursor_in_fringe_p for
overflowing newlines into right fringe.
New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
and indicate_bottom_line_p for buffer boundaries and scrolling.
(enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
and HOLLOW_SQUARE_BITMAP.
(draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
Add prototypes.
if a key press should pop down. Only pop down if a key is pressed
outside the menu/dialog.
(create_and_show_popup_menu): Pass 0 for down_on_keypress to
popup_get_selection.
(create_and_show_dialog): Pass 1 for down_on_keypress to
popup_get_selection.
buffer_posn_from_coords, and marginal_area_string functions to
include both string object and image object in the lispy position.
Also add actual glyph width and height to position.
(read_key_sequence): Use real buffer position from mouse
event to find keymap property even when click is in marginal area.