Commit 3c0882ae authored by Kim F. Storm's avatar Kim F. Storm

(x_update_window_end): Call draw_window_fringes.

(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.
parent 88e6b646
......@@ -570,6 +570,9 @@ x_update_window_end (w, cursor_on_p, mouse_face_overwritten_p)
output_cursor.x, output_cursor.y);
x_draw_vertical_border (w);
draw_window_fringes (w);
UNBLOCK_INPUT;
}
......@@ -649,11 +652,7 @@ x_after_update_window_line (desired_row)
xassert (w);
if (!desired_row->mode_line_p && !w->pseudo_window_p)
{
BLOCK_INPUT;
draw_row_fringe_bitmaps (w, desired_row);
UNBLOCK_INPUT;
}
desired_row->redraw_fringe_bitmaps_p = 1;
/* When a window has disappeared, make sure that no rest of
full-width rows stays visible in the internal border. Could
......@@ -697,9 +696,24 @@ x_draw_fringe_bitmap (w, row, p)
Window window = FRAME_X_WINDOW (f);
GC gc = f->output_data.x->normal_gc;
struct face *face = p->face;
int rowY;
/* Must clip because of partially visible lines. */
x_clip_to_row (w, row, gc);
rowY = WINDOW_TO_FRAME_PIXEL_Y (w, row->y);
if (p->y < rowY)
{
/* Adjust position of "bottom aligned" bitmap on partially
visible last row. */
int oldY = row->y;
int oldVH = row->visible_height;
row->visible_height = p->h;
row->y -= rowY - p->y;
x_clip_to_row (w, row, gc);
row->y = oldY;
row->visible_height = oldVH;
}
else
x_clip_to_row (w, row, gc);
if (p->bx >= 0)
{
......@@ -7448,6 +7462,13 @@ x_draw_window_cursor (w, glyph_row, x, y, cursor_type, cursor_width, on_p, activ
w->phys_cursor_type = cursor_type;
w->phys_cursor_on_p = 1;
if (glyph_row->exact_window_width_line_p
&& w->phys_cursor.hpos >= glyph_row->used[TEXT_AREA])
{
glyph_row->cursor_in_fringe_p = 1;
draw_fringe_bitmap (w, glyph_row, 0);
}
else
switch (cursor_type)
{
case HOLLOW_BOX_CURSOR:
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment