Commit 946fdb73 authored by Eli Zaretskii's avatar Eli Zaretskii

Fix bug #11720 with cursor positioning in outline-mode and Org buffers.

 src/xdisp.c (set_cursor_from_row): Use the leftmost glyph as GLYPH_BEFORE, not
 the rightmost.
parent 1097afe4
......@@ -6,6 +6,8 @@
row.
(handle_face_prop): Use chunk-relative overlay string index when
indexing into it->string_overlays array. (Bug#11653)
(set_cursor_from_row): Use the leftmost glyph as GLYPH_BEFORE, not
the rightmost. (Bug#11720)
2012-06-16 Andreas Schwab <schwab@linux-m68k.org>
......
......@@ -13937,16 +13937,13 @@ set_cursor_from_row (struct window *w, struct glyph_row *row,
break;
}
/* See if we've found a better approximation to
POS_BEFORE or to POS_AFTER. Note that we want the
first (leftmost) glyph of all those that are the
closest from below, and the last (rightmost) of all
those from above. */
POS_BEFORE or to POS_AFTER. */
if (0 > dpos && dpos > pos_before - pt_old)
{
pos_before = glyph->charpos;
glyph_before = glyph;
}
else if (0 < dpos && dpos <= pos_after - pt_old)
else if (0 < dpos && dpos < pos_after - pt_old)
{
pos_after = glyph->charpos;
glyph_after = glyph;
......@@ -14030,7 +14027,7 @@ set_cursor_from_row (struct window *w, struct glyph_row *row,
pos_before = glyph->charpos;
glyph_before = glyph;
}
else if (0 < dpos && dpos <= pos_after - pt_old)
else if (0 < dpos && dpos < pos_after - pt_old)
{
pos_after = glyph->charpos;
glyph_after = glyph;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment