[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/keyboard.c
From: |
Juanma Barranquero |
Subject: |
[Emacs-diffs] Changes to emacs/src/keyboard.c |
Date: |
Fri, 31 Jan 2003 10:23:58 -0500 |
Index: emacs/src/keyboard.c
diff -c emacs/src/keyboard.c:1.721 emacs/src/keyboard.c:1.722
*** emacs/src/keyboard.c:1.721 Thu Jan 23 21:31:07 2003
--- emacs/src/keyboard.c Fri Jan 31 10:23:57 2003
***************
*** 741,747 ****
Lisp_Object echo_string;
echo_string = current_kboard->echo_string;
!
/* If someone has passed us a composite event, use its head symbol. */
c = EVENT_HEAD (c);
--- 741,747 ----
Lisp_Object echo_string;
echo_string = current_kboard->echo_string;
!
/* If someone has passed us a composite event, use its head symbol. */
c = EVENT_HEAD (c);
***************
*** 753,759 ****
{
Lisp_Object name = SYMBOL_NAME (c);
int nbytes = SBYTES (name);
!
if (size - (ptr - buffer) < nbytes)
{
int offset = ptr - buffer;
--- 753,759 ----
{
Lisp_Object name = SYMBOL_NAME (c);
int nbytes = SBYTES (name);
!
if (size - (ptr - buffer) < nbytes)
{
int offset = ptr - buffer;
***************
*** 771,777 ****
{
const char *text = " (Type ? for further options)";
int len = strlen (text);
!
if (size - (ptr - buffer) < len)
{
int offset = ptr - buffer;
--- 771,777 ----
{
const char *text = " (Type ? for further options)";
int len = strlen (text);
!
if (size - (ptr - buffer) < len)
{
int offset = ptr - buffer;
***************
*** 820,831 ****
if (!current_kboard->immediate_echo
&& SCHARS (current_kboard->echo_string) == 0)
return;
!
/* Do nothing if we just printed a prompt. */
if (current_kboard->echo_after_prompt
== SCHARS (current_kboard->echo_string))
return;
!
/* Put a dash at the end of the buffer temporarily,
but make it go away when the next character is added. */
current_kboard->echo_string = concat2 (current_kboard->echo_string,
--- 820,831 ----
if (!current_kboard->immediate_echo
&& SCHARS (current_kboard->echo_string) == 0)
return;
!
/* Do nothing if we just printed a prompt. */
if (current_kboard->echo_after_prompt
== SCHARS (current_kboard->echo_string))
return;
!
/* Put a dash at the end of the buffer temporarily,
but make it go away when the next character is added. */
current_kboard->echo_string = concat2 (current_kboard->echo_string,
***************
*** 1032,1043 ****
{
if (BUFFERP (XCAR (info)))
Fset_buffer (XCAR (info));
!
if (NILP (XCDR (info)))
any_kboard_state ();
else
single_kboard_state ();
!
command_loop_level--;
update_mode_lines = 1;
return Qnil;
--- 1032,1043 ----
{
if (BUFFERP (XCAR (info)))
Fset_buffer (XCAR (info));
!
if (NILP (XCDR (info)))
any_kboard_state ();
else
single_kboard_state ();
!
command_loop_level--;
update_mode_lines = 1;
return Qnil;
***************
*** 1214,1220 ****
since they are asyncronous. */
if (EQ (XCAR (data), Qquit))
Vsignaling_function = Qnil;
!
print_error_message (data, stream, context, Vsignaling_function);
Vsignaling_function = Qnil;
--- 1214,1220 ----
since they are asyncronous. */
if (EQ (XCAR (data), Qquit))
Vsignaling_function = Qnil;
!
print_error_message (data, stream, context, Vsignaling_function);
Vsignaling_function = Qnil;
***************
*** 1557,1563 ****
if the symbol is a local variable. */
if (!NILP (Vpre_command_hook) && !NILP (Vrun_hooks))
safe_run_hooks (Qpre_command_hook);
!
already_adjusted = 0;
if (NILP (Vthis_command))
--- 1557,1563 ----
if the symbol is a local variable. */
if (!NILP (Vpre_command_hook) && !NILP (Vrun_hooks))
safe_run_hooks (Qpre_command_hook);
!
already_adjusted = 0;
if (NILP (Vthis_command))
***************
*** 1663,1669 ****
}
nonundocount++;
}
!
lose = ((XFASTINT (XWINDOW (selected_window)->last_modified)
< MODIFF)
|| (XFASTINT (XWINDOW
(selected_window)->last_overlay_modified)
--- 1663,1669 ----
}
nonundocount++;
}
!
lose = ((XFASTINT (XWINDOW (selected_window)->last_modified)
< MODIFF)
|| (XFASTINT (XWINDOW
(selected_window)->last_overlay_modified)
***************
*** 1676,1682 ****
|| detect_input_pending ()
|| !NILP (XWINDOW
(selected_window)->column_number_displayed)
|| !NILP (Vexecuting_macro));
!
value = internal_self_insert (c, 0);
if (value == 2)
--- 1676,1682 ----
|| detect_input_pending ()
|| !NILP (XWINDOW
(selected_window)->column_number_displayed)
|| !NILP (Vexecuting_macro));
!
value = internal_self_insert (c, 0);
if (value == 2)
***************
*** 1887,1893 ****
(make_number (beg), Qinvisible, Qnil, Qnil);
beg = NATNUMP (tmp) ? XFASTINT (tmp) : BEGV;
}
!
/* Move away from the inside area. */
if (beg < PT && end > PT)
{
--- 1887,1893 ----
(make_number (beg), Qinvisible, Qnil, Qnil);
beg = NATNUMP (tmp) ? XFASTINT (tmp) : BEGV;
}
!
/* Move away from the inside area. */
if (beg < PT && end > PT)
{
***************
*** 2011,2017 ****
/* Turn alarm handling on unconditionally. It might have
been turned off in process.c. */
turn_on_atimers (1);
!
/* If poll timer doesn't exist, are we need one with
a different interval, start a new one. */
if (poll_timer == NULL
--- 2011,2017 ----
/* Turn alarm handling on unconditionally. It might have
been turned off in process.c. */
turn_on_atimers (1);
!
/* If poll timer doesn't exist, are we need one with
a different interval, start a new one. */
if (poll_timer == NULL
***************
*** 2021,2027 ****
if (poll_timer)
cancel_atimer (poll_timer);
!
EMACS_SET_SECS_USECS (interval, polling_period, 0);
poll_timer = start_atimer (ATIMER_CONTINUOUS, interval,
poll_for_input, NULL);
--- 2021,2027 ----
if (poll_timer)
cancel_atimer (poll_timer);
!
EMACS_SET_SECS_USECS (interval, polling_period, 0);
poll_timer = start_atimer (ATIMER_CONTINUOUS, interval,
poll_for_input, NULL);
***************
*** 2182,2188 ****
}
else
help = safe_eval (help);
!
if (!STRINGP (help))
return;
}
--- 2182,2188 ----
}
else
help = safe_eval (help);
!
if (!STRINGP (help))
return;
}
***************
*** 2205,2211 ****
if (!help_echo_showing_p)
Vpre_help_message = current_message ();
!
specbind (Qmessage_truncate_lines, Qt);
message3_nolog (help, SBYTES (help),
STRING_MULTIBYTE (help));
--- 2205,2211 ----
if (!help_echo_showing_p)
Vpre_help_message = current_message ();
!
specbind (Qmessage_truncate_lines, Qt);
message3_nolog (help, SBYTES (help),
STRING_MULTIBYTE (help));
***************
*** 2221,2227 ****
else
message (0);
}
!
help_echo_showing_p = STRINGP (help);
}
}
--- 2221,2227 ----
else
message (0);
}
!
help_echo_showing_p = STRINGP (help);
}
}
***************
*** 2336,2348 ****
&& EQ (XCDR (c), Qdisabled)
&& (SYMBOLP (XCAR (c)) || INTEGERP (XCAR (c))))
c = XCAR (c);
!
/* If the queued event is something that used the mouse,
set used_mouse_menu accordingly. */
if (used_mouse_menu
&& (EQ (c, Qtool_bar) || EQ (c, Qmenu_bar)))
*used_mouse_menu = 1;
!
reread = 1;
goto reread_for_input_method;
}
--- 2336,2348 ----
&& EQ (XCDR (c), Qdisabled)
&& (SYMBOLP (XCAR (c)) || INTEGERP (XCAR (c))))
c = XCAR (c);
!
/* If the queued event is something that used the mouse,
set used_mouse_menu accordingly. */
if (used_mouse_menu
&& (EQ (c, Qtool_bar) || EQ (c, Qmenu_bar)))
*used_mouse_menu = 1;
!
reread = 1;
goto reread_for_input_method;
}
***************
*** 2439,2445 ****
}
/* Message turns off echoing unless more keystrokes turn it on again.
!
The code in 20.x for the condition was
1. echo_area_glyphs && *echo_area_glyphs
--- 2439,2445 ----
}
/* Message turns off echoing unless more keystrokes turn it on again.
!
The code in 20.x for the condition was
1. echo_area_glyphs && *echo_area_glyphs
***************
*** 2447,2456 ****
3. && ok_to_echo_at_next_pause != echo_area_glyphs
(1) means there's a current message displayed
!
(2) means it's not the message from echoing from the current
kboard.
!
(3) There's only one place in 20.x where ok_to_echo_at_next_pause
is set to a non-null value. This is done in read_char and it is
set to echo_area_glyphs after a call to echo_char. That means
--- 2447,2456 ----
3. && ok_to_echo_at_next_pause != echo_area_glyphs
(1) means there's a current message displayed
!
(2) means it's not the message from echoing from the current
kboard.
!
(3) There's only one place in 20.x where ok_to_echo_at_next_pause
is set to a non-null value. This is done in read_char and it is
set to echo_area_glyphs after a call to echo_char. That means
***************
*** 2462,2468 ****
must be either null, or the current message isn't from echoing at
all, or it's from echoing from a different kboard than the
current one. */
!
if (/* There currently is something in the echo area. */
!NILP (echo_area_buffer[0])
&& (/* And it's either not from echoing. */
--- 2462,2468 ----
must be either null, or the current message isn't from echoing at
all, or it's from echoing from a different kboard than the
current one. */
!
if (/* There currently is something in the echo area. */
!NILP (echo_area_buffer[0])
&& (/* And it's either not from echoing. */
***************
*** 2474,2480 ****
cancel_echoing ();
else
echo_dash ();
!
/* Try reading a character via menu prompting in the minibuf.
Try this before the sit-for, because the sit-for
would do the wrong thing if we are supposed to do
--- 2474,2480 ----
cancel_echoing ();
else
echo_dash ();
!
/* Try reading a character via menu prompting in the minibuf.
Try this before the sit-for, because the sit-for
would do the wrong thing if we are supposed to do
***************
*** 2549,2555 ****
/* If in middle of key sequence and minibuffer not active,
start echoing if enough time elapses. */
! if (minibuf_level == 0
&& !current_kboard->immediate_echo
&& this_command_key_count > 0
&& ! noninteractive
--- 2549,2555 ----
/* If in middle of key sequence and minibuffer not active,
start echoing if enough time elapses. */
! if (minibuf_level == 0
&& !current_kboard->immediate_echo
&& this_command_key_count > 0
&& ! noninteractive
***************
*** 2566,2572 ****
|| (!echo_kboard && ok_to_echo_at_next_pause)))
{
Lisp_Object tem0;
!
/* After a mouse event, start echoing right away.
This is because we are probably about to display a menu,
and we don't want to delay before doing so. */
--- 2566,2572 ----
|| (!echo_kboard && ok_to_echo_at_next_pause)))
{
Lisp_Object tem0;
!
/* After a mouse event, start echoing right away.
This is because we are probably about to display a menu,
and we don't want to delay before doing so. */
***************
*** 2930,2936 ****
&& (unsigned) XINT (c) != 127
&& (unsigned) XINT (c) < 256)
{
! Lisp_Object keys;
int key_count;
struct gcpro gcpro1;
int count = SPECPDL_INDEX ();
--- 2930,2936 ----
&& (unsigned) XINT (c) != 127
&& (unsigned) XINT (c) < 256)
{
! Lisp_Object keys;
int key_count;
struct gcpro gcpro1;
int count = SPECPDL_INDEX ();
***************
*** 3030,3036 ****
timer_idleness_start_time = last_idle_start;
goto retry;
}
!
if (this_command_key_count == 0 || ! reread)
{
before_command_key_count = this_command_key_count;
--- 3030,3036 ----
timer_idleness_start_time = last_idle_start;
goto retry;
}
!
if (this_command_key_count == 0 || ! reread)
{
before_command_key_count = this_command_key_count;
***************
*** 3162,3180 ****
Lisp_Object ev1, ev2, ev3;
int ix1, ix2, ix3;
!
if ((ix1 = recent_keys_index - 1) < 0)
ix1 = NUM_RECENT_KEYS - 1;
ev1 = AREF (recent_keys, ix1);
!
if ((ix2 = ix1 - 1) < 0)
ix2 = NUM_RECENT_KEYS - 1;
ev2 = AREF (recent_keys, ix2);
!
if ((ix3 = ix2 - 1) < 0)
ix3 = NUM_RECENT_KEYS - 1;
ev3 = AREF (recent_keys, ix3);
!
if (EQ (XCAR (c), Qhelp_echo))
{
/* Don't record `help-echo' in recent_keys unless it shows some help
--- 3162,3180 ----
Lisp_Object ev1, ev2, ev3;
int ix1, ix2, ix3;
!
if ((ix1 = recent_keys_index - 1) < 0)
ix1 = NUM_RECENT_KEYS - 1;
ev1 = AREF (recent_keys, ix1);
!
if ((ix2 = ix1 - 1) < 0)
ix2 = NUM_RECENT_KEYS - 1;
ev2 = AREF (recent_keys, ix2);
!
if ((ix3 = ix2 - 1) < 0)
ix3 = NUM_RECENT_KEYS - 1;
ev3 = AREF (recent_keys, ix3);
!
if (EQ (XCAR (c), Qhelp_echo))
{
/* Don't record `help-echo' in recent_keys unless it shows some help
***************
*** 3245,3251 ****
}
num_nonmacro_input_events++;
!
/* Write c to the dribble file. If c is a lispy event, write
the event's symbol to the dribble file, in <brackets>. Bleaugh.
If you, dear reader, have a better idea, you've got the source. :-) */
--- 3245,3251 ----
}
num_nonmacro_input_events++;
!
/* Write c to the dribble file. If c is a lispy event, write
the event's symbol to the dribble file, in <brackets>. Bleaugh.
If you, dear reader, have a better idea, you've got the source. :-) */
***************
*** 3560,3566 ****
if (kbd_fetch_ptr - 1 != kbd_store_ptr)
{
int idx;
!
#if 0 /* The SELECTION_REQUEST_EVENT case looks bogus, and it's error
prone to assign individual members for other events, in case
the input_event structure is changed. --2000-07-13, gerd. */
--- 3560,3566 ----
if (kbd_fetch_ptr - 1 != kbd_store_ptr)
{
int idx;
!
#if 0 /* The SELECTION_REQUEST_EVENT case looks bogus, and it's error
prone to assign individual members for other events, in case
the input_event structure is changed. --2000-07-13, gerd. */
***************
*** 3684,3690 ****
int discard;
{
struct input_event *sp;
!
for (sp = kbd_fetch_ptr;
sp != kbd_store_ptr && sp->kind == NO_EVENT;
++sp)
--- 3684,3690 ----
int discard;
{
struct input_event *sp;
!
for (sp = kbd_fetch_ptr;
sp != kbd_store_ptr && sp->kind == NO_EVENT;
++sp)
***************
*** 3987,3993 ****
if (NILP (obj))
{
obj = make_lispy_event (event);
!
#if defined (USE_X_TOOLKIT) || defined (HAVE_NTGUI) || defined(MAC_OS) \
|| defined (USE_GTK)
/* If this was a menu selection, then set the flag to inhibit
--- 3987,3993 ----
if (NILP (obj))
{
obj = make_lispy_event (event);
!
#if defined (USE_X_TOOLKIT) || defined (HAVE_NTGUI) || defined(MAC_OS) \
|| defined (USE_GTK)
/* If this was a menu selection, then set the flag to inhibit
***************
*** 4318,4324 ****
difference = idle_timer_difference;
}
vector = XVECTOR (chosen_timer)->contents;
!
/* If timer is ripe, run it if it hasn't been run. */
if (EMACS_TIME_NEG_P (difference)
|| (EMACS_SECS (difference) == 0
--- 4318,4324 ----
difference = idle_timer_difference;
}
vector = XVECTOR (chosen_timer)->contents;
!
/* If timer is ripe, run it if it hasn't been run. */
if (EMACS_TIME_NEG_P (difference)
|| (EMACS_SECS (difference) == 0
***************
*** 4335,4341 ****
vector[0] = Qt;
specbind (Qinhibit_quit, Qt);
!
call1 (Qtimer_event_handler, chosen_timer);
Vdeactivate_mark = old_deactivate_mark;
timers_run++;
--- 4335,4341 ----
vector[0] = Qt;
specbind (Qinhibit_quit, Qt);
!
call1 (Qtimer_event_handler, chosen_timer);
Vdeactivate_mark = old_deactivate_mark;
timers_run++;
***************
*** 4513,4548 ****
char *lispy_function_keys[] =
{
0, /* 0 */
!
0, /* VK_LBUTTON 0x01 */
0, /* VK_RBUTTON 0x02 */
"cancel", /* VK_CANCEL 0x03 */
0, /* VK_MBUTTON 0x04 */
!
0, 0, 0, /* 0x05 .. 0x07 */
!
"backspace", /* VK_BACK 0x08 */
"tab", /* VK_TAB 0x09 */
!
0, 0, /* 0x0A .. 0x0B */
!
"clear", /* VK_CLEAR 0x0C */
"return", /* VK_RETURN 0x0D */
!
0, 0, /* 0x0E .. 0x0F */
!
0, /* VK_SHIFT 0x10 */
0, /* VK_CONTROL 0x11 */
0, /* VK_MENU 0x12 */
"pause", /* VK_PAUSE 0x13 */
"capslock", /* VK_CAPITAL 0x14 */
!
0, 0, 0, 0, 0, 0, /* 0x15 .. 0x1A */
!
"escape", /* VK_ESCAPE 0x1B */
!
0, 0, 0, 0, /* 0x1C .. 0x1F */
!
0, /* VK_SPACE 0x20 */
"prior", /* VK_PRIOR 0x21 */
"next", /* VK_NEXT 0x22 */
--- 4513,4548 ----
char *lispy_function_keys[] =
{
0, /* 0 */
!
0, /* VK_LBUTTON 0x01 */
0, /* VK_RBUTTON 0x02 */
"cancel", /* VK_CANCEL 0x03 */
0, /* VK_MBUTTON 0x04 */
!
0, 0, 0, /* 0x05 .. 0x07 */
!
"backspace", /* VK_BACK 0x08 */
"tab", /* VK_TAB 0x09 */
!
0, 0, /* 0x0A .. 0x0B */
!
"clear", /* VK_CLEAR 0x0C */
"return", /* VK_RETURN 0x0D */
!
0, 0, /* 0x0E .. 0x0F */
!
0, /* VK_SHIFT 0x10 */
0, /* VK_CONTROL 0x11 */
0, /* VK_MENU 0x12 */
"pause", /* VK_PAUSE 0x13 */
"capslock", /* VK_CAPITAL 0x14 */
!
0, 0, 0, 0, 0, 0, /* 0x15 .. 0x1A */
!
"escape", /* VK_ESCAPE 0x1B */
!
0, 0, 0, 0, /* 0x1C .. 0x1F */
!
0, /* VK_SPACE 0x20 */
"prior", /* VK_PRIOR 0x21 */
"next", /* VK_NEXT 0x22 */
***************
*** 4559,4583 ****
"insert", /* VK_INSERT 0x2D */
"delete", /* VK_DELETE 0x2E */
"help", /* VK_HELP 0x2F */
!
/* VK_0 thru VK_9 are the same as ASCII '0' thru '9' (0x30 - 0x39) */
!
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
!
0, 0, 0, 0, 0, 0, 0, /* 0x3A .. 0x40 */
!
/* VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' (0x41 - 0x5A) */
!
! 0, 0, 0, 0, 0, 0, 0, 0, 0,
! 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
!
"lwindow", /* VK_LWIN 0x5B */
"rwindow", /* VK_RWIN 0x5C */
"apps", /* VK_APPS 0x5D */
!
0, 0, /* 0x5E .. 0x5F */
!
"kp-0", /* VK_NUMPAD0 0x60 */
"kp-1", /* VK_NUMPAD1 0x61 */
"kp-2", /* VK_NUMPAD2 0x62 */
--- 4559,4583 ----
"insert", /* VK_INSERT 0x2D */
"delete", /* VK_DELETE 0x2E */
"help", /* VK_HELP 0x2F */
!
/* VK_0 thru VK_9 are the same as ASCII '0' thru '9' (0x30 - 0x39) */
!
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
!
0, 0, 0, 0, 0, 0, 0, /* 0x3A .. 0x40 */
!
/* VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' (0x41 - 0x5A) */
!
! 0, 0, 0, 0, 0, 0, 0, 0, 0,
! 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
!
"lwindow", /* VK_LWIN 0x5B */
"rwindow", /* VK_RWIN 0x5C */
"apps", /* VK_APPS 0x5D */
!
0, 0, /* 0x5E .. 0x5F */
!
"kp-0", /* VK_NUMPAD0 0x60 */
"kp-1", /* VK_NUMPAD1 0x61 */
"kp-2", /* VK_NUMPAD2 0x62 */
***************
*** 4618,4630 ****
"f22", /* VK_F22 0x85 */
"f23", /* VK_F23 0x86 */
"f24", /* VK_F24 0x87 */
!
0, 0, 0, 0, /* 0x88 .. 0x8B */
0, 0, 0, 0, /* 0x8C .. 0x8F */
!
"kp-numlock", /* VK_NUMLOCK 0x90 */
"scroll", /* VK_SCROLL 0x91 */
!
"kp-space", /* VK_NUMPAD_CLEAR 0x92 */
"kp-enter", /* VK_NUMPAD_ENTER 0x93 */
"kp-prior", /* VK_NUMPAD_PRIOR 0x94 */
--- 4618,4630 ----
"f22", /* VK_F22 0x85 */
"f23", /* VK_F23 0x86 */
"f24", /* VK_F24 0x87 */
!
0, 0, 0, 0, /* 0x88 .. 0x8B */
0, 0, 0, 0, /* 0x8C .. 0x8F */
!
"kp-numlock", /* VK_NUMLOCK 0x90 */
"scroll", /* VK_SCROLL 0x91 */
!
"kp-space", /* VK_NUMPAD_CLEAR 0x92 */
"kp-enter", /* VK_NUMPAD_ENTER 0x93 */
"kp-prior", /* VK_NUMPAD_PRIOR 0x94 */
***************
*** 4646,4662 ****
* No other API or message will distinguish left and right keys this way.
*/
/* 0xA0 .. 0xEF */
!
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
!
/* 0xF0 .. 0xF5 */
!
0, 0, 0, 0, 0, 0,
!
"attn", /* VK_ATTN 0xF6 */
"crsel", /* VK_CRSEL 0xF7 */
"exsel", /* VK_EXSEL 0xF8 */
--- 4646,4662 ----
* No other API or message will distinguish left and right keys this way.
*/
/* 0xA0 .. 0xEF */
!
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
!
/* 0xF0 .. 0xF5 */
!
0, 0, 0, 0, 0, 0,
!
"attn", /* VK_ATTN 0xF6 */
"crsel", /* VK_CRSEL 0xF7 */
"exsel", /* VK_EXSEL 0xF8 */
***************
*** 4689,4695 ****
0,0,0,0,0,0,0,0,0,0,0,0,0,0,"overline",0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* 0x480 .. 0x48f */
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* 0x490 .. 0x49f */
! 0, "kana-fullstop", "kana-openingbracket", "kana-closingbracket",
"kana-comma", "kana-conjunctive", "kana-WO", "kana-a",
"kana-i", "kana-u", "kana-e", "kana-o",
"kana-ya", "kana-yu", "kana-yo", "kana-tsu",
--- 4689,4695 ----
0,0,0,0,0,0,0,0,0,0,0,0,0,0,"overline",0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* 0x480 .. 0x48f */
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* 0x490 .. 0x49f */
! 0, "kana-fullstop", "kana-openingbracket", "kana-closingbracket",
"kana-comma", "kana-conjunctive", "kana-WO", "kana-a",
"kana-i", "kana-u", "kana-e", "kana-o",
"kana-ya", "kana-yu", "kana-yo", "kana-tsu",
***************
*** 4808,4816 ****
0, 0, 0, 0, 0, 0, 0, 0, /* 0xfe10 */
0, 0, 0, 0, 0, 0, 0, 0, /* 0xfe18 */
"iso-lefttab", /* 0xfe20 */
! "iso-move-line-up", "iso-move-line-down",
! "iso-partial-line-up", "iso-partial-line-down",
! "iso-partial-space-left", "iso-partial-space-right",
"iso-set-margin-left", "iso-set-margin-right", /* 0xffe27, 28 */
"iso-release-margin-left", "iso-release-margin-right",
"iso-release-both-margins",
--- 4808,4816 ----
0, 0, 0, 0, 0, 0, 0, 0, /* 0xfe10 */
0, 0, 0, 0, 0, 0, 0, 0, /* 0xfe18 */
"iso-lefttab", /* 0xfe20 */
! "iso-move-line-up", "iso-move-line-down",
! "iso-partial-line-up", "iso-partial-line-down",
! "iso-partial-space-left", "iso-partial-space-right",
"iso-set-margin-left", "iso-set-margin-right", /* 0xffe27, 28 */
"iso-release-margin-left", "iso-release-margin-right",
"iso-release-both-margins",
***************
*** 4832,4838 ****
which they operate, and a delta corresponding to the amount and
direction that the wheel is rotated. Clicking the mouse-wheel
generates a mouse-2 event. */
! static char *lispy_mouse_wheel_names[] =
{
"mouse-wheel"
};
--- 4832,4838 ----
which they operate, and a delta corresponding to the amount and
direction that the wheel is rotated. Clicking the mouse-wheel
generates a mouse-2 event. */
! static char *lispy_mouse_wheel_names[] =
{
"mouse-wheel"
};
***************
*** 5138,5144 ****
the mouse that may have a `local-map' property. */
Lisp_Object string;
int charpos;
!
posn = part == 1 ? Qmode_line : Qheader_line;
string = mode_line_string (w, wx, wy, part == 1, &charpos);
if (STRINGP (string))
--- 5138,5144 ----
the mouse that may have a `local-map' property. */
Lisp_Object string;
int charpos;
!
posn = part == 1 ? Qmode_line : Qheader_line;
string = mode_line_string (w, wx, wy, part == 1, &charpos);
if (STRINGP (string))
***************
*** 5203,5209 ****
button + 1, Qnil);
mouse_syms = larger_vector (mouse_syms, button + 1, Qnil);
}
!
start_pos_ptr = &AREF (button_down_location, button);
start_pos = *start_pos_ptr;
*start_pos_ptr = Qnil;
--- 5203,5209 ----
button + 1, Qnil);
mouse_syms = larger_vector (mouse_syms, button + 1, Qnil);
}
!
start_pos_ptr = &AREF (button_down_location, button);
start_pos = *start_pos_ptr;
*start_pos_ptr = Qnil;
***************
*** 5236,5242 ****
&& ((int)(event->timestamp - button_down_time)
< XINT (Vdouble_click_time)))));
}
!
last_mouse_button = button;
last_mouse_x = XINT (event->x);
last_mouse_y = XINT (event->y);
--- 5236,5242 ----
&& ((int)(event->timestamp - button_down_time)
< XINT (Vdouble_click_time)))));
}
!
last_mouse_button = button;
last_mouse_x = XINT (event->x);
last_mouse_y = XINT (event->y);
***************
*** 5301,5307 ****
button_down_time = 0;
event->modifiers |= drag_modifier;
}
!
/* Don't check is_double; treat this as multiple
if the down-event was multiple. */
if (double_click_count > 1)
--- 5301,5307 ----
button_down_time = 0;
event->modifiers |= drag_modifier;
}
!
/* Don't check is_double; treat this as multiple
if the down-event was multiple. */
if (double_click_count > 1)
***************
*** 5360,5366 ****
The incoming input_event contains in its `part' member an
index of type `enum scroll_bar_part' which we can use as an
index in scroll_bar_parts to get the appropriate symbol. */
!
case SCROLL_BAR_CLICK_EVENT:
{
Lisp_Object position, head, window, portion_whole, part;
--- 5360,5366 ----
The incoming input_event contains in its `part' member an
index of type `enum scroll_bar_part' which we can use as an
index in scroll_bar_parts to get the appropriate symbol. */
!
case SCROLL_BAR_CLICK_EVENT:
{
Lisp_Object position, head, window, portion_whole, part;
***************
*** 5389,5395 ****
XVECTOR (mouse_syms)->size);
return Fcons (head, Fcons (position, Qnil));
}
!
#endif /* USE_TOOLKIT_SCROLL_BARS */
#ifdef WINDOWSNT
--- 5389,5395 ----
XVECTOR (mouse_syms)->size);
return Fcons (head, Fcons (position, Qnil));
}
!
#endif /* USE_TOOLKIT_SCROLL_BARS */
#ifdef WINDOWSNT
***************
*** 5427,5433 ****
head = modify_event_symbol (button,
event->modifiers,
! Qmouse_click,
Vlispy_mouse_stem,
NULL, &mouse_syms,
XVECTOR (mouse_syms)->size);
--- 5427,5433 ----
head = modify_event_symbol (button,
event->modifiers,
! Qmouse_click,
Vlispy_mouse_stem,
NULL, &mouse_syms,
XVECTOR (mouse_syms)->size);
***************
*** 5617,5626 ****
case USER_SIGNAL_EVENT:
/* A user signal. */
return *lispy_user_signals[event->code];
!
case SAVE_SESSION_EVENT:
return Qsave_session;
!
/* The 'kind' field of the event is something we don't recognize. */
default:
abort ();
--- 5617,5626 ----
case USER_SIGNAL_EVENT:
/* A user signal. */
return *lispy_user_signals[event->code];
!
case SAVE_SESSION_EVENT:
return Qsave_session;
!
/* The 'kind' field of the event is something we don't recognize. */
default:
abort ();
***************
*** 5670,5682 ****
{
struct window *w = XWINDOW (window);
int wx, wy;
!
/* Get window relative coordinates. */
wx = FRAME_TO_WINDOW_PIXEL_X (w, XINT (x));
wy = FRAME_TO_WINDOW_PIXEL_Y (w, XINT (y));
XSETINT (x, wx);
XSETINT (y, wy);
!
if (area == 1)
posn = Qmode_line;
else if (area == 2)
--- 5670,5682 ----
{
struct window *w = XWINDOW (window);
int wx, wy;
!
/* Get window relative coordinates. */
wx = FRAME_TO_WINDOW_PIXEL_X (w, XINT (x));
wy = FRAME_TO_WINDOW_PIXEL_Y (w, XINT (y));
XSETINT (x, wx);
XSETINT (y, wy);
!
if (area == 1)
posn = Qmode_line;
else if (area == 2)
***************
*** 6518,6524 ****
if (n_to_read > sizeof cbuf)
n_to_read = sizeof cbuf;
#else /* no FIONREAD */
! #if defined (USG) || defined (DGUX)
/* Read some input if available, but don't wait. */
n_to_read = sizeof cbuf;
fcntl (input_fd, F_SETFL, O_NDELAY);
--- 6518,6524 ----
if (n_to_read > sizeof cbuf)
n_to_read = sizeof cbuf;
#else /* no FIONREAD */
! #if defined (USG) || defined (DGUX) || defined(CYGWIN)
/* Read some input if available, but don't wait. */
n_to_read = sizeof cbuf;
fcntl (input_fd, F_SETFL, O_NDELAY);
***************
*** 6575,6583 ****
);
#ifndef FIONREAD
! #if defined (USG) || defined (DGUX)
fcntl (input_fd, F_SETFL, 0);
! #endif /* USG or DGUX */
#endif /* no FIONREAD */
for (i = 0; i < nread; i++)
{
--- 6575,6583 ----
);
#ifndef FIONREAD
! #if defined (USG) || defined (DGUX) || defined (CYGWIN)
fcntl (input_fd, F_SETFL, 0);
! #endif /* USG or DGUX or CYGWIN */
#endif /* no FIONREAD */
for (i = 0; i < nread; i++)
{
***************
*** 6963,6969 ****
return Qnil;
}
! /* Evaluate an expression and return the result (or nil if something
went wrong). Used to evaluate dynamic parts of menu items. */
Lisp_Object
menu_item_eval_property (sexpr)
--- 6963,6969 ----
return Qnil;
}
! /* Evaluate an expression and return the result (or nil if something
went wrong). Used to evaluate dynamic parts of menu items. */
Lisp_Object
menu_item_eval_property (sexpr)
***************
*** 7016,7022 ****
for (i = ITEM_PROPERTY_DEF; i < ITEM_PROPERTY_ENABLE; i++)
AREF (item_properties, i) = Qnil;
AREF (item_properties, ITEM_PROPERTY_ENABLE) = Qt;
!
/* Save the item here to protect it from GC. */
AREF (item_properties, ITEM_PROPERTY_ITEM) = item;
--- 7016,7022 ----
for (i = ITEM_PROPERTY_DEF; i < ITEM_PROPERTY_ENABLE; i++)
AREF (item_properties, i) = Qnil;
AREF (item_properties, ITEM_PROPERTY_ENABLE) = Qt;
!
/* Save the item here to protect it from GC. */
AREF (item_properties, ITEM_PROPERTY_ITEM) = item;
***************
*** 7036,7042 ****
start = item;
item = XCDR (item);
}
!
/* Maybe key binding cache. */
if (CONSP (item) && CONSP (XCAR (item))
&& (NILP (XCAR (XCAR (item)))
--- 7036,7042 ----
start = item;
item = XCDR (item);
}
!
/* Maybe key binding cache. */
if (CONSP (item) && CONSP (XCAR (item))
&& (NILP (XCAR (XCAR (item)))
***************
*** 7045,7051 ****
cachelist = XCAR (item);
item = XCDR (item);
}
!
/* This is the real definition--the function to run. */
AREF (item_properties, ITEM_PROPERTY_DEF) = item;
--- 7045,7051 ----
cachelist = XCAR (item);
item = XCDR (item);
}
!
/* This is the real definition--the function to run. */
AREF (item_properties, ITEM_PROPERTY_DEF) = item;
***************
*** 7141,7147 ****
return 0;
AREF (item_properties, ITEM_PROPERTY_NAME) = item_string;
}
!
/* If got a filter apply it on definition. */
def = AREF (item_properties, ITEM_PROPERTY_DEF);
if (!NILP (filter))
--- 7141,7147 ----
return 0;
AREF (item_properties, ITEM_PROPERTY_NAME) = item_string;
}
!
/* If got a filter apply it on definition. */
def = AREF (item_properties, ITEM_PROPERTY_DEF);
if (!NILP (filter))
***************
*** 7169,7175 ****
is OK in a submenu but not in the menubar. */
if (NILP (def))
return (inmenubar ? 0 : 1);
!
/* See if this is a separate pane or a submenu. */
def = AREF (item_properties, ITEM_PROPERTY_DEF);
tem = get_keymap (def, 0, 1);
--- 7169,7175 ----
is OK in a submenu but not in the menubar. */
if (NILP (def))
return (inmenubar ? 0 : 1);
!
/* See if this is a separate pane or a submenu. */
def = AREF (item_properties, ITEM_PROPERTY_DEF);
tem = get_keymap (def, 0, 1);
***************
*** 7180,7186 ****
AREF (item_properties, ITEM_PROPERTY_DEF) = tem;
return 1;
}
!
/* At the top level in the menu bar, do likewise for commands also.
The menu bar does not display equivalent key bindings anyway.
ITEM_PROPERTY_DEF is already set up properly. */
--- 7180,7186 ----
AREF (item_properties, ITEM_PROPERTY_DEF) = tem;
return 1;
}
!
/* At the top level in the menu bar, do likewise for commands also.
The menu bar does not display equivalent key bindings anyway.
ITEM_PROPERTY_DEF is already set up properly. */
***************
*** 7207,7213 ****
XSETCAR (cachelist, Qt);
}
}
!
tem = XCAR (cachelist);
if (!EQ (tem, Qt))
{
--- 7207,7213 ----
XSETCAR (cachelist, Qt);
}
}
!
tem = XCAR (cachelist);
if (!EQ (tem, Qt))
{
***************
*** 7315,7321 ****
}
*/
! /* Handle radio buttons or toggle boxes. */
tem = AREF (item_properties, ITEM_PROPERTY_SELECTED);
if (!NILP (tem))
AREF (item_properties, ITEM_PROPERTY_SELECTED)
--- 7315,7321 ----
}
*/
! /* Handle radio buttons or toggle boxes. */
tem = AREF (item_properties, ITEM_PROPERTY_SELECTED);
if (!NILP (tem))
AREF (item_properties, ITEM_PROPERTY_SELECTED)
***************
*** 7382,7394 ****
avoids risk of specpdl overflow. */
oquit = Vinhibit_quit;
Vinhibit_quit = Qt;
!
/* Initialize tool_bar_items_vector and protect it from GC. */
init_tool_bar_items (reuse);
/* Build list of keymaps in maps. Set nmaps to the number of maps
to process. */
!
/* Should overriding-terminal-local-map and overriding-local-map apply? */
if (!NILP (Voverriding_local_map_menu_flag))
{
--- 7382,7394 ----
avoids risk of specpdl overflow. */
oquit = Vinhibit_quit;
Vinhibit_quit = Qt;
!
/* Initialize tool_bar_items_vector and protect it from GC. */
init_tool_bar_items (reuse);
/* Build list of keymaps in maps. Set nmaps to the number of maps
to process. */
!
/* Should overriding-terminal-local-map and overriding-local-map apply? */
if (!NILP (Voverriding_local_map_menu_flag))
{
***************
*** 7433,7439 ****
if (CONSP (keymap))
{
Lisp_Object tail;
!
/* KEYMAP is a list `(keymap (KEY . BINDING) ...)'. */
for (tail = keymap; CONSP (tail); tail = XCDR (tail))
{
--- 7433,7439 ----
if (CONSP (keymap))
{
Lisp_Object tail;
!
/* KEYMAP is a list `(keymap (KEY . BINDING) ...)'. */
for (tail = keymap; CONSP (tail); tail = XCDR (tail))
{
***************
*** 7471,7477 ****
for (i = 0; i < ntool_bar_items; i += TOOL_BAR_ITEM_NSLOTS)
{
Lisp_Object *v = XVECTOR (tool_bar_items_vector)->contents + i;
!
if (EQ (key, v[TOOL_BAR_ITEM_KEY]))
{
if (ntool_bar_items > i + TOOL_BAR_ITEM_NSLOTS)
--- 7471,7477 ----
for (i = 0; i < ntool_bar_items; i += TOOL_BAR_ITEM_NSLOTS)
{
Lisp_Object *v = XVECTOR (tool_bar_items_vector)->contents + i;
!
if (EQ (key, v[TOOL_BAR_ITEM_KEY]))
{
if (ntool_bar_items > i + TOOL_BAR_ITEM_NSLOTS)
***************
*** 7497,7537 ****
invalid.
ITEM is a list `(menu-item CAPTION BINDING PROPS...)'.
!
CAPTION is the caption of the item, If it's not a string, it is
evaluated to get a string.
!
BINDING is the tool bar item's binding. Tool-bar items with keymaps
as binding are currently ignored.
The following properties are recognized:
- `:enable FORM'.
!
FORM is evaluated and specifies whether the tool bar item is
enabled or disabled.
!
- `:visible FORM'
!
FORM is evaluated and specifies whether the tool bar item is visible.
!
- `:filter FUNCTION'
FUNCTION is invoked with one parameter `(quote BINDING)'. Its
result is stored as the new binding.
!
- `:button (TYPE SELECTED)'
TYPE must be one of `:radio' or `:toggle'. SELECTED is evaluated
and specifies whether the button is selected (pressed) or not.
!
- `:image IMAGES'
IMAGES is either a single image specification or a vector of four
image specifications. See enum tool_bar_item_images.
!
- `:help HELP-STRING'.
!
Gives a help string to display for the tool bar item. */
static int
--- 7497,7537 ----
invalid.
ITEM is a list `(menu-item CAPTION BINDING PROPS...)'.
!
CAPTION is the caption of the item, If it's not a string, it is
evaluated to get a string.
!
BINDING is the tool bar item's binding. Tool-bar items with keymaps
as binding are currently ignored.
The following properties are recognized:
- `:enable FORM'.
!
FORM is evaluated and specifies whether the tool bar item is
enabled or disabled.
!
- `:visible FORM'
!
FORM is evaluated and specifies whether the tool bar item is visible.
!
- `:filter FUNCTION'
FUNCTION is invoked with one parameter `(quote BINDING)'. Its
result is stored as the new binding.
!
- `:button (TYPE SELECTED)'
TYPE must be one of `:radio' or `:toggle'. SELECTED is evaluated
and specifies whether the button is selected (pressed) or not.
!
- `:image IMAGES'
IMAGES is either a single image specification or a vector of four
image specifications. See enum tool_bar_item_images.
!
- `:help HELP-STRING'.
!
Gives a help string to display for the tool bar item. */
static int
***************
*** 7565,7575 ****
else
tool_bar_item_properties
= Fmake_vector (make_number (TOOL_BAR_ITEM_NSLOTS), Qnil);
!
/* Set defaults. */
PROP (TOOL_BAR_ITEM_KEY) = key;
PROP (TOOL_BAR_ITEM_ENABLED_P) = Qt;
!
/* Get the caption of the item. If the caption is not a string,
evaluate it to get a string. If we don't get a string, skip this
item. */
--- 7565,7575 ----
else
tool_bar_item_properties
= Fmake_vector (make_number (TOOL_BAR_ITEM_NSLOTS), Qnil);
!
/* Set defaults. */
PROP (TOOL_BAR_ITEM_KEY) = key;
PROP (TOOL_BAR_ITEM_ENABLED_P) = Qt;
!
/* Get the caption of the item. If the caption is not a string,
evaluate it to get a string. If we don't get a string, skip this
item. */
***************
*** 7656,7668 ****
PROP (TOOL_BAR_ITEM_ENABLED_P)
= menu_item_eval_property (PROP (TOOL_BAR_ITEM_ENABLED_P));
! /* Handle radio buttons or toggle boxes. */
if (!NILP (PROP (TOOL_BAR_ITEM_SELECTED_P)))
PROP (TOOL_BAR_ITEM_SELECTED_P)
= menu_item_eval_property (PROP (TOOL_BAR_ITEM_SELECTED_P));
return 1;
!
#undef PROP
}
--- 7656,7668 ----
PROP (TOOL_BAR_ITEM_ENABLED_P)
= menu_item_eval_property (PROP (TOOL_BAR_ITEM_ENABLED_P));
! /* Handle radio buttons or toggle boxes. */
if (!NILP (PROP (TOOL_BAR_ITEM_SELECTED_P)))
PROP (TOOL_BAR_ITEM_SELECTED_P)
= menu_item_eval_property (PROP (TOOL_BAR_ITEM_SELECTED_P));
return 1;
!
#undef PROP
}
***************
*** 7689,7695 ****
append_tool_bar_item ()
{
Lisp_Object *to, *from;
!
/* Enlarge tool_bar_items_vector if necessary. */
if (ntool_bar_items + TOOL_BAR_ITEM_NSLOTS
>= XVECTOR (tool_bar_items_vector)->size)
--- 7689,7695 ----
append_tool_bar_item ()
{
Lisp_Object *to, *from;
!
/* Enlarge tool_bar_items_vector if necessary. */
if (ntool_bar_items + TOOL_BAR_ITEM_NSLOTS
>= XVECTOR (tool_bar_items_vector)->size)
***************
*** 7991,7997 ****
tem = build_string (NILP (selected) ? "[X] " : "[ ] ");
s = concat2 (tem, s);
}
!
/* If we have room for the prompt string, add it to this line.
If this is the first on the line, always add it. */
--- 7991,7997 ----
tem = build_string (NILP (selected) ? "[X] " : "[ ] ");
s = concat2 (tem, s);
}
!
/* If we have room for the prompt string, add it to this line.
If this is the first on the line, always add it. */
***************
*** 8054,8060 ****
}
/* Prompt with that and read response. */
! message2_nolog (menu, strlen (menu),
! NILP (current_buffer->enable_multibyte_characters));
/* Make believe its not a keyboard macro in case the help char
--- 8054,8060 ----
}
/* Prompt with that and read response. */
! message2_nolog (menu, strlen (menu),
! NILP (current_buffer->enable_multibyte_characters));
/* Make believe its not a keyboard macro in case the help char
***************
*** 8691,8697 ****
orig_keymap = get_local_map (PT, current_buffer, Qkeymap);
goto replay_sequence;
}
!
/* For a mouse click, get the local text-property keymap
of the place clicked on, rather than point. */
if (last_real_key_start == 0
--- 8691,8697 ----
orig_keymap = get_local_map (PT, current_buffer, Qkeymap);
goto replay_sequence;
}
!
/* For a mouse click, get the local text-property keymap
of the place clicked on, rather than point. */
if (last_real_key_start == 0
***************
*** 8702,8708 ****
localized_local_map = 1;
start = EVENT_START (key);
!
if (CONSP (start) && CONSP (XCDR (start)))
{
pos = POSN_BUFFER_POSN (start);
--- 8702,8708 ----
localized_local_map = 1;
start = EVENT_START (key);
!
if (CONSP (start) && CONSP (XCDR (start)))
{
pos = POSN_BUFFER_POSN (start);
***************
*** 8741,8747 ****
{
if (t + 1 >= bufsize)
error ("Key sequence too long");
!
keybuf[t] = posn;
keybuf[t + 1] = key;
mock_input = t + 2;
--- 8741,8747 ----
{
if (t + 1 >= bufsize)
error ("Key sequence too long");
!
keybuf[t] = posn;
keybuf[t + 1] = key;
mock_input = t + 2;
***************
*** 8863,8869 ****
else
{
Lisp_Object head;
!
/* Remember the position to put an upper bound on fkey.start. */
first_unbound = min (t, first_unbound);
--- 8863,8869 ----
else
{
Lisp_Object head;
!
/* Remember the position to put an upper bound on fkey.start. */
first_unbound = min (t, first_unbound);
***************
*** 9141,9147 ****
&& (!NILP (Farrayp (XSYMBOL (next)->function))
|| KEYMAPP (XSYMBOL (next)->function)))
next = XSYMBOL (next)->function;
!
/* If the key translation map gives a function, not an
array, then call the function with one arg and use
its value instead. */
--- 9141,9147 ----
&& (!NILP (Farrayp (XSYMBOL (next)->function))
|| KEYMAPP (XSYMBOL (next)->function)))
next = XSYMBOL (next)->function;
!
/* If the key translation map gives a function, not an
array, then call the function with one arg and use
its value instead. */
***************
*** 9305,9311 ****
add_command_key (keybuf[t]);
}
!
UNGCPRO;
return t;
--- 9305,9311 ----
add_command_key (keybuf[t]);
}
!
UNGCPRO;
return t;
***************
*** 9899,9905 ****
Lisp_Object keep_record;
{
int i;
!
this_command_key_count = 0;
if (NILP (keep_record))
--- 9899,9905 ----
Lisp_Object keep_record;
{
int i;
!
this_command_key_count = 0;
if (NILP (keep_record))
***************
*** 10048,10072 ****
stuff_char (*p++);
stuff_char ('\n');
}
!
/* Anything we have read ahead, put back for the shell to read. */
/* ?? What should this do when we have multiple keyboards??
Should we ignore anything that was typed in at the "wrong" kboard? */
for (; kbd_fetch_ptr != kbd_store_ptr; kbd_fetch_ptr++)
{
int idx;
!
if (kbd_fetch_ptr == kbd_buffer + KBD_BUFFER_SIZE)
kbd_fetch_ptr = kbd_buffer;
if (kbd_fetch_ptr->kind == ASCII_KEYSTROKE_EVENT)
stuff_char (kbd_fetch_ptr->code);
!
kbd_fetch_ptr->kind = NO_EVENT;
idx = 2 * (kbd_fetch_ptr - kbd_buffer);
ASET (kbd_buffer_gcpro, idx, Qnil);
ASET (kbd_buffer_gcpro, idx + 1, Qnil);
}
!
input_pending = 0;
#endif
#endif /* BSD_SYSTEM and not BSD4_1 */
--- 10048,10072 ----
stuff_char (*p++);
stuff_char ('\n');
}
!
/* Anything we have read ahead, put back for the shell to read. */
/* ?? What should this do when we have multiple keyboards??
Should we ignore anything that was typed in at the "wrong" kboard? */
for (; kbd_fetch_ptr != kbd_store_ptr; kbd_fetch_ptr++)
{
int idx;
!
if (kbd_fetch_ptr == kbd_buffer + KBD_BUFFER_SIZE)
kbd_fetch_ptr = kbd_buffer;
if (kbd_fetch_ptr->kind == ASCII_KEYSTROKE_EVENT)
stuff_char (kbd_fetch_ptr->code);
!
kbd_fetch_ptr->kind = NO_EVENT;
idx = 2 * (kbd_fetch_ptr - kbd_buffer);
ASET (kbd_buffer_gcpro, idx, Qnil);
ASET (kbd_buffer_gcpro, idx + 1, Qnil);
}
!
input_pending = 0;
#endif
#endif /* BSD_SYSTEM and not BSD4_1 */
***************
*** 10096,10102 ****
}
/* This routine is called at interrupt level in response to C-g.
!
If interrupt_input, this is the handler for SIGINT. Otherwise, it
is called from kbd_buffer_store_event, in handling SIGIO or
SIGTINT.
--- 10096,10102 ----
}
/* This routine is called at interrupt level in response to C-g.
!
If interrupt_input, this is the handler for SIGINT. Otherwise, it
is called from kbd_buffer_store_event, in handling SIGIO or
SIGTINT.
***************
*** 10186,10192 ****
}
while (c != '\n') c = getchar ();
}
! else
{
/* During GC, it must be safe to reenable quitting again. */
Vinhibit_quit = Qnil;
--- 10186,10192 ----
}
while (c != '\n') c = getchar ();
}
! else
{
/* During GC, it must be safe to reenable quitting again. */
Vinhibit_quit = Qnil;
***************
*** 10428,10434 ****
KBOARD *kb;
{
KBOARD **kbp;
!
for (kbp = &all_kboards; *kbp != kb; kbp = &(*kbp)->next_kboard)
if (*kbp == NULL)
abort ();
--- 10428,10434 ----
KBOARD *kb;
{
KBOARD **kbp;
!
for (kbp = &all_kboards; *kbp != kb; kbp = &(*kbp)->next_kboard)
if (*kbp == NULL)
abort ();
***************
*** 10443,10449 ****
if (current_kboard == kb)
abort ();
}
!
wipe_kboard (kb);
xfree (kb);
}
--- 10443,10449 ----
if (current_kboard == kb)
abort ();
}
!
wipe_kboard (kb);
xfree (kb);
}
***************
*** 10545,10551 ****
{
Vpre_help_message = Qnil;
staticpro (&Vpre_help_message);
!
Vlispy_mouse_stem = build_string ("mouse");
staticpro (&Vlispy_mouse_stem);
--- 10545,10551 ----
{
Vpre_help_message = Qnil;
staticpro (&Vpre_help_message);
!
Vlispy_mouse_stem = build_string ("mouse");
staticpro (&Vlispy_mouse_stem);
***************
*** 10620,10626 ****
Qsave_session = intern ("save-session");
staticpro(&Qsave_session);
!
Qusr1_signal = intern ("usr1-signal");
staticpro (&Qusr1_signal);
Qusr2_signal = intern ("usr2-signal");
--- 10620,10626 ----
Qsave_session = intern ("save-session");
staticpro(&Qsave_session);
!
Qusr1_signal = intern ("usr1-signal");
staticpro (&Qusr1_signal);
Qusr2_signal = intern ("usr2-signal");
***************
*** 10918,10924 ****
This variable is also the threshold for motion of the mouse
to count as a drag. */);
double_click_fuzz = 3;
!
DEFVAR_BOOL ("inhibit-local-menu-bar-menus", &inhibit_local_menu_bar_menus,
doc: /* *Non-nil means inhibit local map menu bar menus. */);
inhibit_local_menu_bar_menus = 0;
--- 10918,10924 ----
This variable is also the threshold for motion of the mouse
to count as a drag. */);
double_click_fuzz = 3;
!
DEFVAR_BOOL ("inhibit-local-menu-bar-menus", &inhibit_local_menu_bar_menus,
doc: /* *Non-nil means inhibit local map menu bar menus. */);
inhibit_local_menu_bar_menus = 0;