diff options
| author | YAMAMOTO Mitsuharu | 2011-05-21 10:56:45 +0900 |
|---|---|---|
| committer | YAMAMOTO Mitsuharu | 2011-05-21 10:56:45 +0900 |
| commit | 4d8ade89573bba54d21c2cff9886420770e0ef0b (patch) | |
| tree | ede5b49b26c996c6594db52fcb92dbce2613454c /src | |
| parent | 165fd2df8cc5cfc292d8f2b81c7ff259bf7b9561 (diff) | |
| download | emacs-4d8ade89573bba54d21c2cff9886420770e0ef0b.tar.gz emacs-4d8ade89573bba54d21c2cff9886420770e0ef0b.zip | |
* dispnew.c (scrolling_window): Don't exclude the case that the
last enabled row in the desired matrix touches the bottom boundary.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/dispnew.c | 30 |
2 files changed, 23 insertions, 12 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 2767231b64b..774bd4235ac 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2011-05-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | ||
| 2 | |||
| 3 | * dispnew.c (scrolling_window): Don't exclude the case that the | ||
| 4 | last enabled row in the desired matrix touches the bottom boundary. | ||
| 5 | |||
| 1 | 2011-05-11 Drew Adams <drew.adams@oracle.com> | 6 | 2011-05-11 Drew Adams <drew.adams@oracle.com> |
| 2 | 7 | ||
| 3 | * textprop.c (Fprevious_single_char_property_change): Doc fix (bug#8655). | 8 | * textprop.c (Fprevious_single_char_property_change): Doc fix (bug#8655). |
diff --git a/src/dispnew.c b/src/dispnew.c index 60ce149da1c..5fd29e2d591 100644 --- a/src/dispnew.c +++ b/src/dispnew.c | |||
| @@ -4990,23 +4990,29 @@ scrolling_window (w, header_line_p) | |||
| 4990 | 4990 | ||
| 4991 | first_old = first_new = i; | 4991 | first_old = first_new = i; |
| 4992 | 4992 | ||
| 4993 | /* Set last_new to the index + 1 of the last enabled row in the | 4993 | /* Set last_new to the index + 1 of the row that reaches the |
| 4994 | desired matrix. */ | 4994 | bottom boundary in the desired matrix. Give up if we find a |
| 4995 | disabled row before we reach the bottom boundary. */ | ||
| 4995 | i = first_new + 1; | 4996 | i = first_new + 1; |
| 4996 | while (i < desired_matrix->nrows - 1 | 4997 | while (i < desired_matrix->nrows - 1) |
| 4997 | && MATRIX_ROW (desired_matrix, i)->enabled_p | 4998 | { |
| 4998 | && MATRIX_ROW_BOTTOM_Y (MATRIX_ROW (desired_matrix, i)) <= yb) | 4999 | int bottom; |
| 4999 | ++i; | ||
| 5000 | 5000 | ||
| 5001 | if (!MATRIX_ROW (desired_matrix, i)->enabled_p) | 5001 | if (!MATRIX_ROW (desired_matrix, i)->enabled_p) |
| 5002 | return 0; | 5002 | return 0; |
| 5003 | bottom = MATRIX_ROW_BOTTOM_Y (MATRIX_ROW (desired_matrix, i)); | ||
| 5004 | if (bottom <= yb) | ||
| 5005 | ++i; | ||
| 5006 | if (bottom >= yb) | ||
| 5007 | break; | ||
| 5008 | } | ||
| 5003 | 5009 | ||
| 5004 | last_new = i; | 5010 | last_new = i; |
| 5005 | 5011 | ||
| 5006 | /* Set last_old to the index + 1 of the last enabled row in the | 5012 | /* Set last_old to the index + 1 of the row that reaches the bottom |
| 5007 | current matrix. We don't look at the enabled flag here because | 5013 | boundary in the current matrix. We don't look at the enabled |
| 5008 | we plan to reuse part of the display even if other parts are | 5014 | flag here because we plan to reuse part of the display even if |
| 5009 | disabled. */ | 5015 | other parts are disabled. */ |
| 5010 | i = first_old + 1; | 5016 | i = first_old + 1; |
| 5011 | while (i < current_matrix->nrows - 1) | 5017 | while (i < current_matrix->nrows - 1) |
| 5012 | { | 5018 | { |