diff src/w32term.c @ 109843:1ada063020ba

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.
author Eli Zaretskii <eliz@gnu.org>
date Wed, 18 Aug 2010 19:42:06 +0300
parents 300a489dd304
children 55c8c3ca3d48
line wrap: on
line diff
--- a/src/w32term.c	Wed Aug 18 15:12:34 2010 +0200
+++ b/src/w32term.c	Wed Aug 18 19:42:06 2010 +0300
@@ -4897,6 +4897,11 @@
 
 	  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);