Commit 29bd1392 authored by Chong Yidong's avatar Chong Yidong
Browse files

(try_window_id): Give up if word-wrapping is on.

parent 9204cb8b
......@@ -14534,9 +14534,10 @@ find_last_unchanged_at_beg_row (w)
int yb = window_text_bottom_y (w);
/* Find the last row displaying unchanged text. */
row = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
&& MATRIX_ROW_START_CHARPOS (row) < first_changed_pos)
for (row = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
&& MATRIX_ROW_START_CHARPOS (row) < first_changed_pos;
if (/* If row ends before first_changed_pos, it is unchanged,
except in some case. */
......@@ -14553,10 +14554,8 @@ find_last_unchanged_at_beg_row (w)
row_found = row;
/* Stop if last visible row. */
if (MATRIX_ROW_BOTTOM_Y (row) >= yb)
if (MATRIX_ROW_BOTTOM_Y (row) >= yb)
return row_found;
......@@ -14872,6 +14871,12 @@ try_window_id (w)
if (overlay_arrows_changed_p ())
GIVE_UP (12);
/* When word-wrap is on, adding a space to the first word of a
wrapped line can change the wrap position, altering the line
above it. It might be worthwhile to handle this more
intelligently, but for now just redisplay from scratch. */
if (!NILP (XBUFFER (w->buffer)->word_wrap))
GIVE_UP (21);
/* Make sure beg_unchanged and end_unchanged are up to date. Do it
only if buffer has really changed. The reason is that the gap is
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