aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
authorEli Zaretskii2010-04-20 16:31:28 +0300
committerEli Zaretskii2010-04-20 16:31:28 +0300
commit283ccc1841a43a9426b7fa4c397fc9593ae4022b (patch)
tree8365f6715bb866e6c07410f600ae2a43900f77d4 /src/ChangeLog
parent3bb49aaf02507540cefed269bd410d318f8c81b4 (diff)
parent93d68d0c2b085f65a867024fb8e7e28a629a003a (diff)
downloademacs-283ccc1841a43a9426b7fa4c397fc9593ae4022b.tar.gz
emacs-283ccc1841a43a9426b7fa4c397fc9593ae4022b.zip
Implement GUI display of R2L lines, fix TTY display of R2L lines.
xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for append_stretch_glyph. (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix off-by-one error in computing x at end of text in the row. (append_stretch_glyph): In reversed row, prepend the glyph rather than append it. Set resolved_level and bidi_type of the glyph. (extend_face_to_end_of_line): If the row is reversed, prepend a stretch glyph whose width is such that the rightmost glyph will be drawn at the right margin of the window. Fix off-by-one error on TTY frames in testing whether a line needs face extension. Fix face extension at ZV. If this is the last glyph row, use DEFAULT_FACE_ID, to avoid painting the rest of the window with the region face. (set_cursor_from_row, display_line): Use MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of row->continuation_lines_width. (next_element_from_buffer): Don't call bidi_paragraph_init if we are at ZV. Fixes a crash when reseated to ZV by try_window_reusing_current_matrix. (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS, which happens with R2L glyph rows. Fixes a crash when inserting a character at end of an R2L line. (set_cursor_from_row): Don't be fooled by truncated rows: don't treat them as having zero-width characters. Improve comments. Don't reverse pos_before and pos_after for reversed glyph rows. Set cursor.x to negative value when the cursor might be on the left fringe. (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the left fringe, not the right one. (notice_overwritten_cursor, draw_phys_cursor_glyph) (erase_phys_cursor): For reversed cursor_row, support cursor on the left fringe. fringe.c (update_window_fringes): For R2L rows, swap the bitmaps of continuation indicators on the fringes. (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the left fringe. w32term.c (w32_draw_window_cursor): For reversed glyph rows, draw cursor on the left fringe. xterm.c (x_draw_window_cursor): For reversed glyph rows, draw cursor on the left fringe. dispnew.c (update_text_area): Handle reversed desired rows when the cursor is on the left fringe. (set_window_cursor_after_update): Limit cursor's hpos by -1 from below, not by 0, for when the cursor is on the left fringe. xdisp.c (unproduce_glyphs): New function. (display_line): Use it when produced glyphs are discarded from R2L glyph rows. (append_composite_glyph): In R2L rows, prepend the glyph rather than appending it. term.c (append_composite_glyph): In R2L rows, prepend the glyph rather than append it. Set up the resolved_level and bidi_type attributes of the appended glyph. (produce_special_glyphs): Mirror the backslash continuation character in R2L lines.
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog67
1 files changed, 67 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 4cb7383144d..481588e5acc 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,70 @@
12010-04-20 Eli Zaretskii <eliz@gnu.org>
2
3 Fix R2L paragraph display on TTY.
4
5 * xdisp.c (unproduce_glyphs): New function.
6 (display_line): Use it when produced glyphs are discarded from R2L
7 glyph rows.
8 (append_composite_glyph): In R2L rows, prepend the glyph rather
9 than appending it.
10
11 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
12 rather than append it. Set up the resolved_level and bidi_type
13 attributes of the appended glyph.
14 (produce_special_glyphs): Mirror the backslash continuation
15 character in R2L lines.
16
17 Implement display of R2L paragraphs in GUI sessions.
18
19 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
20 append_stretch_glyph.
21 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
22 off-by-one error in computing x at end of text in the row.
23 (append_stretch_glyph): In reversed row, prepend the glyph rather
24 than append it. Set resolved_level and bidi_type of the glyph.
25 (extend_face_to_end_of_line): If the row is reversed, prepend a
26 stretch glyph whose width is such that the rightmost glyph will be
27 drawn at the right margin of the window. Fix off-by-one error on
28 TTY frames in testing whether a line needs face extension. Fix
29 face extension at ZV. If this is the last glyph row, use
30 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
31 region face.
32 (set_cursor_from_row, display_line): Use
33 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
34 row->continuation_lines_width.
35 (next_element_from_buffer): Don't call bidi_paragraph_init if we
36 are at ZV. Fixes a crash when reseated to ZV by
37 try_window_reusing_current_matrix.
38 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
39 which happens with R2L glyph rows. Fixes a crash when inserting a
40 character at end of an R2L line.
41 (set_cursor_from_row): Don't be fooled by truncated rows: don't
42 treat them as having zero-width characters. Improve comments.
43 Don't reverse pos_before and pos_after for reversed glyph rows.
44 Set cursor.x to negative value when the cursor might be on the
45 left fringe.
46 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
47 left fringe, not the right one.
48 (notice_overwritten_cursor, draw_phys_cursor_glyph)
49 (erase_phys_cursor): For reversed cursor_row, support cursor on
50 the left fringe.
51
52 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
53 of continuation indicators on the fringes.
54 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
55 left fringe.
56
57 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
58 draw cursor on the left fringe.
59
60 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
61 cursor on the left fringe.
62
63 * dispnew.c (update_text_area): Handle reversed desired rows when
64 the cursor is on the left fringe.
65 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
66 below, not by 0, for when the cursor is on the left fringe.
67
12010-04-20 Jan Djärv <jan.h.d@swipnet.se> 682010-04-20 Jan Djärv <jan.h.d@swipnet.se>
2 69
3 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed 70 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed