Commit 4f9dc9b6 authored by Eli Zaretskii's avatar Eli Zaretskii
Browse files

A better fix for bug #17777 with visual-order cursor movement.

 src/xdisp.c (Fmove_point_visually): Instead of testing for keyboard
 macro execution, make sure point didn't move since last complete
 redisplay, as the condition for using the glyph matrix
 information.
parent 6a7faa16
2014-06-16 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (Fmove_point_visually): Instead of testing for keyboard
macro execution, make sure point didn't move since last complete
redisplay, as the condition for using the glyph matrix
information. (Bug#17777)
2014-06-14 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (Fmove_point_visually): Don't use the glyph matrix
......
......@@ -20757,12 +20757,15 @@ Value is the new character position of point. */)
recorded in the glyphs, at least as long as the goal is on the
screen. */
if (w->window_end_valid
&& NILP (Vexecuting_kbd_macro)
&& !windows_or_buffers_changed
&& b
&& !b->clip_changed
&& !b->prevent_redisplay_optimizations_p
&& !window_outdated (w)
/* We rely below on the cursor coordinates to be up to date, but
we cannot trust them if some command moved point since the
last complete redisplay. */
&& w->last_point == BUF_PT (b)
&& w->cursor.vpos >= 0
&& w->cursor.vpos < w->current_matrix->nrows
&& (row = MATRIX_ROW (w->current_matrix, w->cursor.vpos))->enabled_p)
......
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