Take account of periodic fringe bitmap's dependency on y-position in redrawing.
commite61124cd850ad6e0fc511dc995031db77b3535cd
authorYAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
Wed, 25 May 2011 03:06:05 +0000 (25 12:06 +0900)
committerYAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
Wed, 25 May 2011 03:06:05 +0000 (25 12:06 +0900)
tree6c43a8bbdecf4dce4f8c815af831e46a4a503a57
parent964b0e76b0c609ddd0dd71b7ab7c7c44627ec044
Take account of periodic fringe bitmap's dependency on y-position in redrawing.

* dispextern.h (struct glyph_row): New member fringe_bitmap_periodic_p.

* dispnew.c (shift_glyph_matrix, scrolling_window): Mark scrolled row
for fringe update if it has periodic bitmap.
(row_equal_p): Also compare left_fringe_offset, right_fringe_offset,
and fringe_bitmap_periodic_p.

* fringe.c (get_fringe_bitmap_data): New function.
(draw_fringe_bitmap_1, update_window_fringes): Use it.
(update_window_fringes): Record periodicity of fringe bitmap in glyph
row.  Mark glyph row for fringe update if periodicity changed.

* xdisp.c (try_window_reusing_current_matrix): Don't mark scrolled row
for fringe update unless it has periodic bitmap.
src/ChangeLog
src/dispextern.h
src/dispnew.c
src/fringe.c
src/xdisp.c