Mercurial > emacs
comparison src/msdos.c @ 30050:ed1979c6dfb9
* xterm.c (note_mode_line_highlight, note_mouse_highlight)
(note_tool_bar_highlight, XTread_socket):
* msdos.c (IT_note_mode_line_highlight, IT_note_mouse_highlight)
(dos_rawgetc):
* w32term.c (note_mode_line_highlight, note_mouse_highlight)
(note_tool_bar_highlight, w32_read_socket):
Do not gratuitously ignore non-string `help-echo' properties.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Wed, 05 Jul 2000 13:41:00 +0000 |
parents | 7da06cd67660 |
children | 5d20e989c3d4 |
comparison
equal
deleted
inserted
replaced
30049:be64b32cd2a2 | 30050:ed1979c6dfb9 |
---|---|
1373 /* If we're on a string with `help-echo' text property, | 1373 /* If we're on a string with `help-echo' text property, |
1374 arrange for the help to be displayed. This is done by | 1374 arrange for the help to be displayed. This is done by |
1375 setting the global variable help_echo to the help string. */ | 1375 setting the global variable help_echo to the help string. */ |
1376 help = Fget_text_property (make_number (glyph->charpos), | 1376 help = Fget_text_property (make_number (glyph->charpos), |
1377 Qhelp_echo, glyph->object); | 1377 Qhelp_echo, glyph->object); |
1378 if (STRINGP (help)) | 1378 if (!NILP (help)) |
1379 help_echo = help; | 1379 help_echo = help; |
1380 } | 1380 } |
1381 } | 1381 } |
1382 } | 1382 } |
1383 | 1383 |
1621 Lisp_Object help; | 1621 Lisp_Object help; |
1622 extern Lisp_Object Qhelp_echo; | 1622 extern Lisp_Object Qhelp_echo; |
1623 | 1623 |
1624 /* Check overlays first. */ | 1624 /* Check overlays first. */ |
1625 help = Qnil; | 1625 help = Qnil; |
1626 for (i = 0; i < noverlays && !STRINGP (help); ++i) | 1626 for (i = 0; i < noverlays && NILP (help); ++i) |
1627 help = Foverlay_get (overlay_vec[i], Qhelp_echo); | 1627 help = Foverlay_get (overlay_vec[i], Qhelp_echo); |
1628 | 1628 |
1629 /* Try text properties. */ | 1629 /* Try text properties. */ |
1630 if (!STRINGP (help) | 1630 if (NILP (help) |
1631 && ((STRINGP (glyph->object) | 1631 && ((STRINGP (glyph->object) |
1632 && glyph->charpos >= 0 | 1632 && glyph->charpos >= 0 |
1633 && glyph->charpos < XSTRING (glyph->object)->size) | 1633 && glyph->charpos < XSTRING (glyph->object)->size) |
1634 || (BUFFERP (glyph->object) | 1634 || (BUFFERP (glyph->object) |
1635 && glyph->charpos >= BEGV | 1635 && glyph->charpos >= BEGV |
1636 && glyph->charpos < ZV))) | 1636 && glyph->charpos < ZV))) |
1637 help = Fget_text_property (make_number (glyph->charpos), | 1637 help = Fget_text_property (make_number (glyph->charpos), |
1638 Qhelp_echo, glyph->object); | 1638 Qhelp_echo, glyph->object); |
1639 | 1639 |
1640 if (STRINGP (help)) | 1640 if (!NILP (help)) |
1641 help_echo = help; | 1641 help_echo = help; |
1642 } | 1642 } |
1643 | 1643 |
1644 BEGV = obegv; | 1644 BEGV = obegv; |
1645 ZV = ozv; | 1645 ZV = ozv; |
3237 help_echo = Qnil; | 3237 help_echo = Qnil; |
3238 IT_note_mouse_highlight (SELECTED_FRAME(), | 3238 IT_note_mouse_highlight (SELECTED_FRAME(), |
3239 mouse_last_x, mouse_last_y); | 3239 mouse_last_x, mouse_last_y); |
3240 /* If the contents of the global variable help_echo has | 3240 /* If the contents of the global variable help_echo has |
3241 changed, generate a HELP_EVENT. */ | 3241 changed, generate a HELP_EVENT. */ |
3242 if (STRINGP (help_echo) || STRINGP (previous_help_echo)) | 3242 if (!NILP (help_echo) || !NILP (previous_help_echo)) |
3243 { | 3243 { |
3244 event.kind = HELP_EVENT; | 3244 event.kind = HELP_EVENT; |
3245 event.frame_or_window = Fcons (selected_frame, help_echo); | 3245 event.frame_or_window = Fcons (selected_frame, help_echo); |
3246 event.timestamp = event_timestamp (); | 3246 event.timestamp = event_timestamp (); |
3247 kbd_buffer_store_event (&event); | 3247 kbd_buffer_store_event (&event); |