From: Richard M. Stallman Date: Sun, 5 Jan 1997 23:05:46 +0000 (+0000) Subject: (command_loop_1, read_char): X-Git-Tag: emacs-20.1~3110 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=cdb9d66596420c686031b92dc4e5a845b5afa34a;p=emacs.git (command_loop_1, read_char): Run Qecho_area_clear_hook when clearing echo area. (Qecho_area_clear_hook): New variable. (syms_of_keyboard): Initialize it. --- diff --git a/src/keyboard.c b/src/keyboard.c index 37bbb0c2245..ebe32821a28 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -339,6 +339,8 @@ Lisp_Object Vdeactivate_mark; Lisp_Object Vlucid_menu_bar_dirty_flag; Lisp_Object Qrecompute_lucid_menubar, Qactivate_menubar_hook; +Lisp_Object Qecho_area_clear_hook; + /* Hooks to run before and after each command. */ Lisp_Object Qpre_command_hook, Vpre_command_hook; Lisp_Object Qpost_command_hook, Vpost_command_hook; @@ -1141,6 +1143,7 @@ command_loop_1 () Fsit_for (make_number (2), Qnil, Qnil); /* Clear the echo area. */ message2 (0); + safe_run_hooks (Qecho_area_clear_hook); unbind_to (count, Qnil); @@ -2109,6 +2112,8 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) } /* Wipe the echo area. */ + if (echo_area_glyphs) + safe_run_hooks (Qecho_area_clear_hook); echo_area_glyphs = 0; /* Handle things that only apply to characters. */ @@ -8199,6 +8204,13 @@ This feature is obsolete; use idle timers instead. See `etc/NEWS'."); This is measured in microseconds."); post_command_idle_delay = 100000; +#if 0 + DEFVAR_LISP ("echo-area-clear-hook", ..., + "Normal hook run when clearing the echo area."); +#endif + Qecho_area_clear_hook = intern ("echo-area-clear-hook"); + XSYMBOL (Qecho_area_clear_hook)->value = Qnil; + DEFVAR_LISP ("lucid-menu-bar-dirty-flag", &Vlucid_menu_bar_dirty_flag, "t means menu bar, specified Lucid style, needs to be recomputed."); Vlucid_menu_bar_dirty_flag = Qnil;