diff options
| author | Gerd Moellmann | 2001-05-30 11:19:43 +0000 |
|---|---|---|
| committer | Gerd Moellmann | 2001-05-30 11:19:43 +0000 |
| commit | 8bd189fb2ff8a752d65c926959341034de32ff04 (patch) | |
| tree | 3f809648b9bb6fa4d9cf006c338c10359532bb65 /src | |
| parent | 00f5189042c641aecca28ff797aeefd67cd0ff2e (diff) | |
| download | emacs-8bd189fb2ff8a752d65c926959341034de32ff04.tar.gz emacs-8bd189fb2ff8a752d65c926959341034de32ff04.zip | |
(note_mouse_highlight): If an overlapping overlay
exists, but we find that we highlight the same overlay as before,
don't do the highlighting again.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 6 | ||||
| -rw-r--r-- | src/xterm.c | 19 |
2 files changed, 20 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 3c851d1c7f6..26ee254877a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2001-05-30 Gerd Moellmann <gerd@gnu.org> | ||
| 2 | |||
| 3 | * xterm.c (note_mouse_highlight): If an overlapping overlay | ||
| 4 | exists, but we find that we highlight the same overlay as before, | ||
| 5 | don't do the highlighting again. | ||
| 6 | |||
| 1 | 2001-05-29 Gerd Moellmann <gerd@gnu.org> | 7 | 2001-05-29 Gerd Moellmann <gerd@gnu.org> |
| 2 | 8 | ||
| 3 | * xmenu.c (single_submenu, xmenu_show) [!HAVE_MULTILINGUAL_MENU]: | 9 | * xmenu.c (single_submenu, xmenu_show) [!HAVE_MULTILINGUAL_MENU]: |
diff --git a/src/xterm.c b/src/xterm.c index 394b75cfe6c..f6f3f599798 100644 --- a/src/xterm.c +++ b/src/xterm.c | |||
| @@ -6959,10 +6959,6 @@ note_mouse_highlight (f, x, y) | |||
| 6959 | || (OVERLAYP (dpyinfo->mouse_face_overlay) | 6959 | || (OVERLAYP (dpyinfo->mouse_face_overlay) |
| 6960 | && mouse_face_overlay_overlaps (dpyinfo->mouse_face_overlay))) | 6960 | && mouse_face_overlay_overlaps (dpyinfo->mouse_face_overlay))) |
| 6961 | { | 6961 | { |
| 6962 | /* Clear the display of the old active region, if any. */ | ||
| 6963 | if (clear_mouse_face (dpyinfo)) | ||
| 6964 | cursor = None; | ||
| 6965 | |||
| 6966 | /* Find the highest priority overlay that has a mouse-face | 6962 | /* Find the highest priority overlay that has a mouse-face |
| 6967 | property. */ | 6963 | property. */ |
| 6968 | overlay = Qnil; | 6964 | overlay = Qnil; |
| @@ -6972,8 +6968,19 @@ note_mouse_highlight (f, x, y) | |||
| 6972 | if (!NILP (mouse_face)) | 6968 | if (!NILP (mouse_face)) |
| 6973 | overlay = overlay_vec[i]; | 6969 | overlay = overlay_vec[i]; |
| 6974 | } | 6970 | } |
| 6975 | dpyinfo->mouse_face_overlay = overlay; | 6971 | |
| 6972 | /* If we're actually highlighting the same overlay as | ||
| 6973 | before, there's no need to do that again. */ | ||
| 6974 | if (!NILP (overlay) | ||
| 6975 | && EQ (overlay, dpyinfo->mouse_face_overlay)) | ||
| 6976 | goto check_help_echo; | ||
| 6976 | 6977 | ||
| 6978 | dpyinfo->mouse_face_overlay = overlay; | ||
| 6979 | |||
| 6980 | /* Clear the display of the old active region, if any. */ | ||
| 6981 | if (clear_mouse_face (dpyinfo)) | ||
| 6982 | cursor = None; | ||
| 6983 | |||
| 6977 | /* If no overlay applies, get a text property. */ | 6984 | /* If no overlay applies, get a text property. */ |
| 6978 | if (NILP (overlay)) | 6985 | if (NILP (overlay)) |
| 6979 | mouse_face = Fget_text_property (position, Qmouse_face, object); | 6986 | mouse_face = Fget_text_property (position, Qmouse_face, object); |
| @@ -7085,6 +7092,8 @@ note_mouse_highlight (f, x, y) | |||
| 7085 | } | 7092 | } |
| 7086 | } | 7093 | } |
| 7087 | 7094 | ||
| 7095 | check_help_echo: | ||
| 7096 | |||
| 7088 | /* Look for a `help-echo' property. */ | 7097 | /* Look for a `help-echo' property. */ |
| 7089 | { | 7098 | { |
| 7090 | Lisp_Object help, overlay; | 7099 | Lisp_Object help, overlay; |