comparison src/cmdloop.c @ 412:697ef44129c6 r21-2-14

Import from CVS: tag r21-2-14
author cvs
date Mon, 13 Aug 2007 11:20:41 +0200
parents 501cfd01ee6d
children 11054d720c21
comparison
equal deleted inserted replaced
411:12e008d41344 412:697ef44129c6
37 #include "events.h" 37 #include "events.h"
38 #include "window.h" 38 #include "window.h"
39 39
40 /* Current depth in recursive edits. */ 40 /* Current depth in recursive edits. */
41 int command_loop_level; 41 int command_loop_level;
42
43 /* Total number of times command_loop has read a key sequence. */
44 int num_input_keys;
42 45
43 #ifndef LISP_COMMAND_LOOP 46 #ifndef LISP_COMMAND_LOOP
44 /* Form to evaluate (if non-nil) when Emacs is started. */ 47 /* Form to evaluate (if non-nil) when Emacs is started. */
45 Lisp_Object Vtop_level; 48 Lisp_Object Vtop_level;
46 #else 49 #else
119 stderr_out ("*** Error in XEmacs initialization"); 122 stderr_out ("*** Error in XEmacs initialization");
120 Fprint (x, Qexternal_debugging_output); 123 Fprint (x, Qexternal_debugging_output);
121 stderr_out ("*** Backtrace\n"); 124 stderr_out ("*** Backtrace\n");
122 Fbacktrace (Qexternal_debugging_output, Qt); 125 Fbacktrace (Qexternal_debugging_output, Qt);
123 stderr_out ("*** Killing XEmacs\n"); 126 stderr_out ("*** Killing XEmacs\n");
124 #ifdef HAVE_MS_WINDOWS
125 Fmswindows_message_box (build_string ("Initialization error"),
126 Qnil, Qnil);
127 #endif
128 return Fkill_emacs (make_int (-1)); 127 return Fkill_emacs (make_int (-1));
129 } 128 }
130 129
131 130
132 /**********************************************************************/ 131 /**********************************************************************/
520 /* cancel_echoing (); */ 519 /* cancel_echoing (); */
521 /* This magically makes single character keyboard macros work just 520 /* This magically makes single character keyboard macros work just
522 like the real thing. This is slightly bogus, but it's in here for 521 like the real thing. This is slightly bogus, but it's in here for
523 compatibility with Emacs 18. It's not even clear what the "right 522 compatibility with Emacs 18. It's not even clear what the "right
524 thing" is. */ 523 thing" is. */
525 if (!((STRINGP (Vexecuting_macro) || VECTORP (Vexecuting_macro)) 524 if (!(((STRINGP (Vexecuting_macro) || VECTORP (Vexecuting_macro))
526 && XINT (Flength (Vexecuting_macro)) == 1)) 525 && XINT (Flength (Vexecuting_macro)) == 1)))
527 Vlast_command = Qt; 526 Vlast_command = Qt;
528 527
529 #ifndef LISP_COMMAND_LOOP 528 #ifndef LISP_COMMAND_LOOP
530 while (1) 529 while (1)
531 #else 530 #else
535 { 534 {
536 /* If focus_follows_mouse, make sure the frame with window manager 535 /* If focus_follows_mouse, make sure the frame with window manager
537 focus is selected. */ 536 focus is selected. */
538 if (focus_follows_mouse) 537 if (focus_follows_mouse)
539 investigate_frame_change (); 538 investigate_frame_change ();
540 539
541 /* Make sure the current window's buffer is selected. */ 540 /* Make sure the current window's buffer is selected. */
542 { 541 {
543 Lisp_Object selected_window = Fselected_window (Qnil); 542 Lisp_Object selected_window = Fselected_window (Qnil);
544 543
545 if (!NILP (selected_window) && 544 if (!NILP (selected_window) &&