diff options
| author | Eli Zaretskii | 2011-11-01 20:57:03 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2011-11-01 20:57:03 +0200 |
| commit | bc17a887d1df07f5a75287ff7d551d548e10f387 (patch) | |
| tree | fcb7d3b33e23a4fbfaa95c2e59e732a9766d8512 /src | |
| parent | 4ee88440781304fc7003d51e363c3e3a5cc2e8fd (diff) | |
| download | emacs-bc17a887d1df07f5a75287ff7d551d548e10f387.tar.gz emacs-bc17a887d1df07f5a75287ff7d551d548e10f387.zip | |
Fix mouse highlight in continued lines on a TTY.
src/xdisp.c (mouse_face_from_buffer_pos): Fix a typo in a comment.
Don't stop backward scan on the continuation glyph, even though
its CHARPOS is positive.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 6 | ||||
| -rw-r--r-- | src/xdisp.c | 14 |
2 files changed, 12 insertions, 8 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 37635555a0f..d27a8625407 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2011-11-01 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * xdisp.c (mouse_face_from_buffer_pos): Fix a typo in a comment. | ||
| 4 | Don't stop backward scan on the continuation glyph, even though | ||
| 5 | its CHARPOS is positive. | ||
| 6 | |||
| 1 | 2011-11-01 Martin Rudalics <rudalics@gmx.at> | 7 | 2011-11-01 Martin Rudalics <rudalics@gmx.at> |
| 2 | 8 | ||
| 3 | * window.c (temp_output_buffer_show): Don't use | 9 | * window.c (temp_output_buffer_show): Don't use |
diff --git a/src/xdisp.c b/src/xdisp.c index 33c5fc0d230..99d0d69d834 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -25875,10 +25875,10 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 25875 | r2 = next; | 25875 | r2 = next; |
| 25876 | } | 25876 | } |
| 25877 | /* The rest of the display engine assumes that mouse_face_beg_row is | 25877 | /* The rest of the display engine assumes that mouse_face_beg_row is |
| 25878 | either above below mouse_face_end_row or identical to it. But | 25878 | either above mouse_face_end_row or identical to it. But with |
| 25879 | with bidi-reordered continued lines, the row for START_CHARPOS | 25879 | bidi-reordered continued lines, the row for START_CHARPOS could |
| 25880 | could be below the row for END_CHARPOS. If so, swap the rows and | 25880 | be below the row for END_CHARPOS. If so, swap the rows and store |
| 25881 | store them in correct order. */ | 25881 | them in correct order. */ |
| 25882 | if (r1->y > r2->y) | 25882 | if (r1->y > r2->y) |
| 25883 | { | 25883 | { |
| 25884 | struct glyph_row *tem = r2; | 25884 | struct glyph_row *tem = r2; |
| @@ -26030,8 +26030,7 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26030 | row, and also blanks and stretch glyphs inserted by | 26030 | row, and also blanks and stretch glyphs inserted by |
| 26031 | extend_face_to_end_of_line. */ | 26031 | extend_face_to_end_of_line. */ |
| 26032 | while (end > glyph | 26032 | while (end > glyph |
| 26033 | && INTEGERP ((end - 1)->object) | 26033 | && INTEGERP ((end - 1)->object)) |
| 26034 | && (end - 1)->charpos <= 0) | ||
| 26035 | --end; | 26034 | --end; |
| 26036 | /* Scan the rest of the glyph row from the end, looking for the | 26035 | /* Scan the rest of the glyph row from the end, looking for the |
| 26037 | first glyph that comes from BEFORE_STRING, AFTER_STRING, or | 26036 | first glyph that comes from BEFORE_STRING, AFTER_STRING, or |
| @@ -26077,8 +26076,7 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26077 | x = r2->x; | 26076 | x = r2->x; |
| 26078 | end++; | 26077 | end++; |
| 26079 | while (end < glyph | 26078 | while (end < glyph |
| 26080 | && INTEGERP (end->object) | 26079 | && INTEGERP (end->object)) |
| 26081 | && end->charpos <= 0) | ||
| 26082 | { | 26080 | { |
| 26083 | x += end->pixel_width; | 26081 | x += end->pixel_width; |
| 26084 | ++end; | 26082 | ++end; |