Mercurial > emacs
view src/xgselect.h @ 111107:f3721a6253a8
Fix mouse highlight in bidi-reordered continued lines.
xdisp.c (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.
(mouse_face_from_buffer_pos): Rewrite to not 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.
Continued lines that begin or end outside of the visible region
still don't work.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Sat, 02 Oct 2010 17:05:20 +0200 |
parents | e16f43875a48 |
children | 417b1e4d63cd |
line wrap: on
line source
/* Header for xg_select. Copyright (C) 2009, 2010 Free Software Foundation, Inc. This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #ifndef XGSELECT_H #define XGSELECT_H #include "lisp.h" #include "systime.h" #include "sysselect.h" extern int xg_select (int max_fds, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds, EMACS_TIME *timeout); extern void xgselect_initialize (void); #endif /* XGSELECT_H */ /* arch-tag: 0c5392a8-3a41-41eb-839c-58e6595926f0 (do not change this comment) */