Fix cursor misalignment on truncated RTL rows
authorPo Lu <luangruo@yahoo.com>
Sun, 5 May 2024 01:38:27 +0000 (09:38 +0800)
committerPo Lu <luangruo@yahoo.com>
Sun, 5 May 2024 01:38:27 +0000 (09:38 +0800)
* src/xdisp.c (set_cursor_from_row): Begin computing the
position of the rightmost glyph from row->x, not 0.

src/xdisp.c

index 85802ec5083b021fe7796b5f6f58e9fe918172c3..8829c617f292ed72ac38666faa88390f91389aec 100644 (file)
@@ -18182,7 +18182,7 @@ set_cursor_from_row (struct window *w, struct glyph_row *row,
            --glyph;
          /* By default, in reversed rows we put the cursor on the
             rightmost (first in the reading order) glyph.  */
-         for (x = 0, g = end + 1; g < glyph; g++)
+         for (x = row->x, g = end + 1; g < glyph; g++)
            x += g->pixel_width;
          while (end < glyph
                 && NILP ((end + 1)->object)