Mercurial > emacs
comparison src/dispnew.c @ 107588:1104f4d707b1
Retrospective commit from 2009-09-12.
Undo changes from 2009-09-11. Set row->end and row->start in
xdisp.c:display_line.
dispnew.c (direct_output_for_insert): Give up if we are
reordering bidirectional text.
dispextern.h (IT_STACK_SIZE): Enlarge to 5.
xdisp.c (display_line): Set row->end and it->start for the next
row to the next character in logical order. If we are reordering
bidi text, push and pop the iterator before and after momentarily
iterating in logical order.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Thu, 31 Dec 2009 16:14:26 -0500 |
parents | 0ff1b8888f6b |
children | a04b9ac55bc5 |
comparison
equal
deleted
inserted
replaced
107587:0ff1b8888f6b | 107588:1104f4d707b1 |
---|---|
3610 || it.what != IT_CHARACTER) | 3610 || it.what != IT_CHARACTER) |
3611 return 0; | 3611 return 0; |
3612 | 3612 |
3613 delta += 1; | 3613 delta += 1; |
3614 delta_bytes += it.len; | 3614 delta_bytes += it.len; |
3615 set_iterator_to_next (&it, 1, 0); | 3615 set_iterator_to_next (&it, 1); |
3616 } | 3616 } |
3617 | 3617 |
3618 /* Give up if we hit the right edge of the window. We would have | 3618 /* Give up if we hit the right edge of the window. We would have |
3619 to insert truncation or continuation glyphs. */ | 3619 to insert truncation or continuation glyphs. */ |
3620 added_width = it.current_x - (w->cursor.x + it.first_visible_x); | 3620 added_width = it.current_x - (w->cursor.x + it.first_visible_x); |
3628 while (get_next_display_element (&it2) | 3628 while (get_next_display_element (&it2) |
3629 && !ITERATOR_AT_END_OF_LINE_P (&it2)) | 3629 && !ITERATOR_AT_END_OF_LINE_P (&it2)) |
3630 { | 3630 { |
3631 if (it2.c == '\t') | 3631 if (it2.c == '\t') |
3632 return 0; | 3632 return 0; |
3633 set_iterator_to_next (&it2, 1, 0); | 3633 set_iterator_to_next (&it2, 1); |
3634 } | 3634 } |
3635 | 3635 |
3636 /* Number of new glyphs produced. */ | 3636 /* Number of new glyphs produced. */ |
3637 n = it.glyph_row->used[TEXT_AREA]; | 3637 n = it.glyph_row->used[TEXT_AREA]; |
3638 | 3638 |