aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGerd Moellmann2000-12-29 21:08:50 +0000
committerGerd Moellmann2000-12-29 21:08:50 +0000
commit9c8b83828fff34f68e89282aad31eb7ab1425d8c (patch)
treea90ec141dcaabf82999994f9a392c434fbe1968f /src
parent762a68ecf7ffefc6547053653ccc41308df4e3a0 (diff)
downloademacs-9c8b83828fff34f68e89282aad31eb7ab1425d8c.tar.gz
emacs-9c8b83828fff34f68e89282aad31eb7ab1425d8c.zip
(try_window_reusing_current_matrix)
<new start <= old start>: Disable rows in the current matrix which are below the window after scrolling.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog10
-rw-r--r--src/xdisp.c9
2 files changed, 17 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 8c8fb7d43d8..7d54241ad0a 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,15 @@
12000-12-29 Gerd Moellmann <gerd@gnu.org> 12000-12-29 Gerd Moellmann <gerd@gnu.org>
2 2
3 * dispnew.c (check_current_matrix_flags) [GLYPH_DEBUG]: New
4 function.
5 (update_window) [GLYPH_DEBUG]: Call it.
6 (scrolling_window): Prevent including current rows which are below
7 what's displayed in the window.
8
9 * xdisp.c (try_window_reusing_current_matrix)
10 <new start <= old start>: Disable rows in the current matrix
11 which are below the window after scrolling.
12
3 * xdisp.c (move_it_by_lines): Don't do optimizations if NEED_Y_P 13 * xdisp.c (move_it_by_lines): Don't do optimizations if NEED_Y_P
4 is zero. It's not worth the complexity. 14 is zero. It's not worth the complexity.
5 (invisible_text_between_p): Put in #if 0 because unused. 15 (invisible_text_between_p): Put in #if 0 because unused.
diff --git a/src/xdisp.c b/src/xdisp.c
index ae35c982e97..ed98ced48a2 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -10185,10 +10185,10 @@ try_window_reusing_current_matrix (w)
10185 MATRIX_ROW_VPOS (bottom_row, w->current_matrix), 10185 MATRIX_ROW_VPOS (bottom_row, w->current_matrix),
10186 nrows_scrolled); 10186 nrows_scrolled);
10187 10187
10188 /* Disable lines not reused. */ 10188 /* Disable lines that must be updated. */
10189 for (i = 0; i < it.vpos; ++i) 10189 for (i = 0; i < it.vpos; ++i)
10190 (start_row + i)->enabled_p = 0; 10190 (start_row + i)->enabled_p = 0;
10191 10191
10192 /* Re-compute Y positions. */ 10192 /* Re-compute Y positions. */
10193 min_y = WINDOW_DISPLAY_HEADER_LINE_HEIGHT (w); 10193 min_y = WINDOW_DISPLAY_HEADER_LINE_HEIGHT (w);
10194 max_y = it.last_visible_y; 10194 max_y = it.last_visible_y;
@@ -10213,6 +10213,11 @@ try_window_reusing_current_matrix (w)
10213 if (MATRIX_ROW_BOTTOM_Y (row) >= it.last_visible_y) 10213 if (MATRIX_ROW_BOTTOM_Y (row) >= it.last_visible_y)
10214 break; 10214 break;
10215 } 10215 }
10216
10217 /* Disable lines in the current matrix which are now
10218 below the window. */
10219 for (; row < bottom_row; ++row)
10220 row->enabled_p = 0;
10216 } 10221 }
10217 10222
10218 /* Update window_end_pos etc.; last_reused_text_row is the last 10223 /* Update window_end_pos etc.; last_reused_text_row is the last