diff options
| author | Eli Zaretskii | 2010-10-23 17:30:45 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2010-10-23 17:30:45 +0200 |
| commit | d1d6801eb4badab97416d0b6294e1920d0f90c3e (patch) | |
| tree | 83cc92ae8e0a28b767e3abe8cc2e2753f1c855c7 /src/ChangeLog | |
| parent | a6ac7fc4fddadcf7939f5f8b6ec09fadb4f90fc8 (diff) | |
| parent | a4041a7121ee093ec81ef0cb4b8da62a54587596 (diff) | |
| download | emacs-d1d6801eb4badab97416d0b6294e1920d0f90c3e.tar.gz emacs-d1d6801eb4badab97416d0b6294e1920d0f90c3e.zip | |
Implement mouse highlight for bidi-reordered lines.
xdisp.c (fast_find_string_pos): #ifdef away, not used anymore.
(mouse_face_from_string_pos): New function, replaces
fast_find_string_pos.
(note_mouse_highlight): Call it instead of fast_find_string_pos.
(note_mode_line_or_margin_highlight): Support bidi-reordered
strings and R2L glyph rows. Fix comments.
(note_mouse_highlight): When bidi reordering is turned on in a
buffer, call next-single-property-change and
previous-single-property-change with last argument nil. Clear
mouse highlight when mouse pointer is in a R2L row on the stretch
glyph that stands for no text beyond the line end.
(row_containing_pos): Don't return too early when CHARPOS is in a
bidi-reordered continued line. Return immediately when the first
hit is found in a line that is not continued, or when an exact
match for CHARPOS is found.
(rows_from_pos_range): New function.
(mouse_face_from_buffer_pos): Use it instead of calling
row_containing_pos for START_CHARPOS and END_CHARPOS. Rewrite the
function to support mouse highlight in bidi-reordered lines and
not to assume that START_CHARPOS is always in mouse_face_beg_row.
If necessary, swap mouse_face_beg_row and mouse_face_end_row so
that the former is always above the latter or identical to it.
(show_mouse_face): Support drawing highlighted R2L lines.
(coords_in_mouse_face_p): New function, bidi-aware.
(cursor_in_mouse_face_p, note_mouse_highlight, erase_phys_cursor):
Call it instead of comparing with mouse-face members of dpyinfo.
(note_mode_line_or_margin_highlight): Fix confusingly swapped
usage of hpos and vpos.
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 05a0d442149..e4cd83a6236 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,36 @@ | |||
| 1 | 2010-10-23 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | Implement mouse highlight for bidi-reordered lines. | ||
| 4 | |||
| 5 | * xdisp.c (fast_find_string_pos): #ifdef away, not used anymore. | ||
| 6 | (mouse_face_from_string_pos): New function, replaces | ||
| 7 | fast_find_string_pos. | ||
| 8 | (note_mouse_highlight): Call it instead of fast_find_string_pos. | ||
| 9 | (note_mode_line_or_margin_highlight): Support bidi-reordered | ||
| 10 | strings and R2L glyph rows. Fix comments. | ||
| 11 | (note_mouse_highlight): When bidi reordering is turned on in a | ||
| 12 | buffer, call next-single-property-change and | ||
| 13 | previous-single-property-change with last argument nil. Clear | ||
| 14 | mouse highlight when mouse pointer is in a R2L row on the stretch | ||
| 15 | glyph that stands for no text beyond the line end. | ||
| 16 | (row_containing_pos): Don't return too early when CHARPOS is in a | ||
| 17 | bidi-reordered continued line. Return immediately when the first | ||
| 18 | hit is found in a line that is not continued, or when an exact | ||
| 19 | match for CHARPOS is found. | ||
| 20 | (rows_from_pos_range): New function. | ||
| 21 | (mouse_face_from_buffer_pos): Use it instead of calling | ||
| 22 | row_containing_pos for START_CHARPOS and END_CHARPOS. Rewrite the | ||
| 23 | function to support mouse highlight in bidi-reordered lines and | ||
| 24 | not to assume that START_CHARPOS is always in mouse_face_beg_row. | ||
| 25 | If necessary, swap mouse_face_beg_row and mouse_face_end_row so | ||
| 26 | that the former is always above the latter or identical to it. | ||
| 27 | (show_mouse_face): Support drawing highlighted R2L lines. | ||
| 28 | (coords_in_mouse_face_p): New function, bidi-aware. | ||
| 29 | (cursor_in_mouse_face_p, note_mouse_highlight, erase_phys_cursor): | ||
| 30 | Call it instead of comparing with mouse-face members of dpyinfo. | ||
| 31 | (note_mode_line_or_margin_highlight): Fix confusingly swapped | ||
| 32 | usage of hpos and vpos. | ||
| 33 | |||
| 1 | 2010-10-22 Jan Djärv <jan.h.d@swipnet.se> | 34 | 2010-10-22 Jan Djärv <jan.h.d@swipnet.se> |
| 2 | 35 | ||
| 3 | * xrdb.c: Include keyboard.h for MOTIF. | 36 | * xrdb.c: Include keyboard.h for MOTIF. |
| @@ -1528,7 +1561,7 @@ | |||
| 1528 | non-MSDOS, non-WINDOWSNT code, it's only defined for such systems | 1561 | non-MSDOS, non-WINDOWSNT code, it's only defined for such systems |
| 1529 | anyway. | 1562 | anyway. |
| 1530 | 1563 | ||
| 1531 | 2010-08-21 Eli Zaretskii <eliz@gnu.org> | 1564 | 2010-08-20 Eli Zaretskii <eliz@gnu.org> |
| 1532 | 1565 | ||
| 1533 | * dispnew.c (buffer_posn_from_coords): Fix off-by-one error in | 1566 | * dispnew.c (buffer_posn_from_coords): Fix off-by-one error in |
| 1534 | mirroring pixel positions. | 1567 | mirroring pixel positions. |