summaryrefslogtreecommitdiff
path: root/src/w32term.c
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2010-08-18 19:42:06 +0300
committerEli Zaretskii <eliz@gnu.org>2010-08-18 19:42:06 +0300
commit9335210608653cef7a111d096dcfacd7bd87682a (patch)
tree4b2d8db0f1d851f9dc890793d214613fc75ad228 /src/w32term.c
parentb5ba2d6f9bdd21771f5dbad663396eef2ec057c8 (diff)
downloademacs-9335210608653cef7a111d096dcfacd7bd87682a.tar.gz
Fix display of bar cursor on right-to-left text.
xterm.c (x_draw_bar_cursor): w32term.c (x_draw_bar_cursor): If the character under cursor is R2L, draw the bar cursor on its right rather than on its left.
Diffstat (limited to 'src/w32term.c')
-rw-r--r--src/w32term.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/w32term.c b/src/w32term.c
index 947ed5c9d44..992538e0e88 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -4897,6 +4897,11 @@ x_draw_bar_cursor (struct window *w, struct glyph_row *row,
w->phys_cursor_width = width;
+ /* If the character under cursor is R2L, draw the bar cursor
+ on the right of its glyph, rather than on the left. */
+ if ((cursor_glyph->resolved_level & 1) != 0)
+ x += cursor_glyph->pixel_width - width;
+
w32_fill_area (f, hdc, cursor_color, x,
WINDOW_TO_FRAME_PIXEL_Y (w, w->phys_cursor.y),
width, row->height);