Mercurial > emacs
changeset 74407:1fb529de23b7
(kbd_buffer_store_event_hold): Don't throw-on-input
if first event in [signal xxx] sequence.
(lispy_user_signals, Qusr1_signal, Qusr2_signal): Remove.
(syms_of_keyboard): Don't intern and staticpro them.
(Qsignal, Qusr1, Qusr2): Declare.
(syms_of_keyboard): Intern and staticpro them.
(make_lispy_event): Return them for USER_SIGNAL_EVENTs.
author | Kim F. Storm <storm@cua.dk> |
---|---|
date | Mon, 04 Dec 2006 12:26:58 +0000 |
parents | 6bc8bd6fe72c |
children | 4c44b86a628e |
files | src/keyboard.c |
diffstat | 1 files changed, 20 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/src/keyboard.c Mon Dec 04 12:26:50 2006 +0000 +++ b/src/keyboard.c Mon Dec 04 12:26:58 2006 +0000 @@ -3784,7 +3784,8 @@ if (!NILP (Vthrow_on_input) && event->kind != FOCUS_IN_EVENT && event->kind != HELP_EVENT - && event->kind != DEICONIFY_EVENT) + && event->kind != DEICONIFY_EVENT + && !(event->kind == USER_SIGNAL_EVENT && event->code == 0)) { Vquit_flag = Vthrow_on_input; /* If we're inside a function that wants immediate quits, @@ -5073,13 +5074,7 @@ }; /* User signal events. */ -Lisp_Object Qusr1_signal, Qusr2_signal; - -Lisp_Object *lispy_user_signals[] = -{ - &Qusr1_signal, &Qusr2_signal -}; - +Lisp_Object Qsignal, Qusr1, Qusr2; /* A vector, indexed by button number, giving the down-going location of currently depressed buttons, both scroll bar and non-scroll bar. @@ -5953,7 +5948,17 @@ case USER_SIGNAL_EVENT: /* A user signal. */ - return *lispy_user_signals[event->code]; + switch (event->code) + { + case 0: + return Qsignal; + case SIGUSR1: + return Qusr1; + case SIGUSR2: + return Qusr2; + default: + return make_number (event->code); + } case SAVE_SESSION_EVENT: return Qsave_session; @@ -11026,10 +11031,12 @@ staticpro (&Qmac_apple_event); #endif - Qusr1_signal = intern ("usr1-signal"); - staticpro (&Qusr1_signal); - Qusr2_signal = intern ("usr2-signal"); - staticpro (&Qusr2_signal); + Qsignal = intern ("signal"); + staticpro (&Qsignal); + Qusr1 = intern ("usr1"); + staticpro (&Qusr1); + Qusr2 = intern ("usr2"); + staticpro (&Qusr2); Qmenu_enable = intern ("menu-enable"); staticpro (&Qmenu_enable);