diff options
author | Eli Zaretskii <eliz@gnu.org> | 2010-04-10 19:28:30 +0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2010-04-10 19:28:30 +0300 |
commit | f951a50681995aa58a427f0be801c682df6e5baa (patch) | |
tree | 69f31a04e8f3ad5bd98b15703999200332ebc718 /src/fringe.c | |
parent | 2204f4de61e2b10832e13748f36d705854f7bd56 (diff) | |
download | emacs-f951a50681995aa58a427f0be801c682df6e5baa.tar.gz |
Implement cursor on the left fringe for R2L lines.
xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines,
consider the left fringe, not the right one.
(set_cursor_from_row): 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.
(extend_face_to_end_of_line): Append the stretch glyph only if its
width is positive.
(notice_overwritten_cursor, draw_phys_cursor_glyph)
(erase_phys_cursor): For reversed cursor_row, support 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.
fringe.c (draw_fringe_bitmap): For reversed glyph rows, allow
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.
Diffstat (limited to 'src/fringe.c')
-rw-r--r-- | src/fringe.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/fringe.c b/src/fringe.c index 952e95a5517..335dde03c8a 100644 --- a/src/fringe.c +++ b/src/fringe.c @@ -825,7 +825,7 @@ draw_fringe_bitmap (w, row, left_p) { int overlay = 0; - if (!left_p && row->cursor_in_fringe_p) + if (left_p == row->reversed_p && row->cursor_in_fringe_p) { Lisp_Object cursor = Qnil; @@ -857,7 +857,7 @@ draw_fringe_bitmap (w, row, left_p) int bm = get_logical_cursor_bitmap (w, cursor); if (bm != NO_FRINGE_BITMAP) { - draw_fringe_bitmap_1 (w, row, 0, 2, bm); + draw_fringe_bitmap_1 (w, row, left_p, 2, bm); overlay = EQ (cursor, Qbox) ? 3 : 1; } } |