diff options
| author | Gerd Moellmann | 2001-10-22 14:53:30 +0000 |
|---|---|---|
| committer | Gerd Moellmann | 2001-10-22 14:53:30 +0000 |
| commit | 653c329be8a9a4d37a15df4795050989168c7b3f (patch) | |
| tree | 26e67264a8dd5444355efded496edffdb4f30d2c /src | |
| parent | 7ba51063becfa3275c9419ab9ed9d1d54df97b95 (diff) | |
| download | emacs-653c329be8a9a4d37a15df4795050989168c7b3f.tar.gz emacs-653c329be8a9a4d37a15df4795050989168c7b3f.zip | |
(display_line): Fix computation of continuation lines
width for TABs.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/xdisp.c | 12 |
2 files changed, 12 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 91ceccec080..260ed84445d 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2001-10-22 Gerd Moellmann <gerd@gnu.org> | ||
| 2 | |||
| 3 | * xdisp.c (display_line): Fix computation of continuation lines | ||
| 4 | width for TABs. | ||
| 5 | |||
| 1 | 2001-10-22 Pavel Jan,Bm(Bk <Pavel@Janik.cz> | 6 | 2001-10-22 Pavel Jan,Bm(Bk <Pavel@Janik.cz> |
| 2 | 7 | ||
| 3 | * xdisp.c (build_desired_tool_bar_string): Remove unused variable | 8 | * xdisp.c (build_desired_tool_bar_string): Remove unused variable |
diff --git a/src/xdisp.c b/src/xdisp.c index 7c96e268db5..522148d1863 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -12934,18 +12934,20 @@ display_line (it) | |||
| 12934 | { | 12934 | { |
| 12935 | /* Display element draws past the right edge of | 12935 | /* Display element draws past the right edge of |
| 12936 | the window. Restore positions to values | 12936 | the window. Restore positions to values |
| 12937 | before the element. The next line starts | 12937 | before the element. */ |
| 12938 | with current_x before the glyph that could | ||
| 12939 | not be displayed, so that TAB works right. */ | ||
| 12940 | row->used[TEXT_AREA] = n_glyphs_before + i; | 12938 | row->used[TEXT_AREA] = n_glyphs_before + i; |
| 12941 | 12939 | ||
| 12942 | /* Display continuation glyphs. */ | 12940 | /* Display continuation glyphs. */ |
| 12943 | if (!FRAME_WINDOW_P (it->f)) | 12941 | if (!FRAME_WINDOW_P (it->f)) |
| 12944 | produce_special_glyphs (it, IT_CONTINUATION); | 12942 | produce_special_glyphs (it, IT_CONTINUATION); |
| 12945 | row->continued_p = 1; | 12943 | row->continued_p = 1; |
| 12944 | |||
| 12945 | /* A TAB takes us to the right edge of the window. */ | ||
| 12946 | if (it->c == '\t') | ||
| 12947 | it->continuation_lines_width += it->last_visible_x; | ||
| 12948 | else | ||
| 12949 | it->continuation_lines_width += x; | ||
| 12946 | 12950 | ||
| 12947 | it->current_x = x; | ||
| 12948 | it->continuation_lines_width += x; | ||
| 12949 | if (nglyphs > 1 && i > 0) | 12951 | if (nglyphs > 1 && i > 0) |
| 12950 | { | 12952 | { |
| 12951 | row->ends_in_middle_of_char_p = 1; | 12953 | row->ends_in_middle_of_char_p = 1; |