+2010-08-18 Eli Zaretskii <eliz@gnu.org>
+
+ * 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.
+
2010-08-18 Stefan Monnier <monnier@iro.umontreal.ca>
* eval.c (Fdefmacro): Only obey one declaration.
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);
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;
+
XFillRectangle (dpy, window, gc,
WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x),
WINDOW_TO_FRAME_PIXEL_Y (w, w->phys_cursor.y),