diff src/keyboard.c @ 83014:f5cadabb36dd

Support for opening X frames from a tty session. lisp/cus-face.el (custom-declare-face): Handle multiple concurrent display methods correctly. lisp/faces.el (x-create-frame-with-faces): Set the window-system frame parameter instead of frame-creation-function. (tty-create-frame-with-faces): Ditto. lisp/frame.el (frame-creation-function): Removed. (frame-creation-function-alist): New variable. (frame-initialize): Use initial-window-system instead of window-system. Add window-system parameter to initial-frame-alist. Removed tty initialization, it was moved to frame-creation-function-alist. (frame-notice-user-settings): Use initial-window-system instead of window-system. (make-frame-on-display): Make sure term/x-win is loaded. Added window-system parameter for make-frame. (make-frame-on-tty): Removed unnecessary autoload declaration. Added window-system parameter for make-frame. (make-frame): Use frame-creation-function-alist to determine the function to use depending on the specified window system. (select-frame-by-name): Use the window-system function instead of the variable. lisp/startup.el (window-system): New variable (previously built-in, now frame-local). (normal-top-level, command-line): Use initial-window-system instead of window-system. lisp/loadup.el: Load startup.el before faces.el, for the window-system variable. lisp/term/x-win.el: Check for the x-create-frame function instead of window-system to see if X is available. Don't exit Emacs if the display can not be opened when X is not the initial display method. Set up frame-creation-function-alist instead of frame-creation-function. Provide the x-win feature. src/dispnew.c (Vwindow_system): Renamed to Vinitial_window_system. (init_display, syms_of_display): Updated to use Vinitial_window_system instead of Vwindow_system. src/emacs.c (shut_down_emacs): Updated to use Vinitial_window_system instead of Vwindow_system. src/keyboard.c (Fset_input_mode): Call reset_all_sys_modes, not reset_sys_modes. Ditto for init_all_sys_modes. Process the quit parameter correctly. src/sysdep.c (init_sys_modes, reset_sys_modes): Unconditionally set up the terminal. We don't get called if there is nothing to do anymore. (sys_select): Use Vinitial_window_system, not Vwindow_system. src/window.h (Vwindow_system): Renamed to Vinitial_window_system. src/xfns.c (Fx_create_frame): Don't check_x. We initialize it anyway. (x_display_info_for_name, Fx_open_connection): Don't look at Vinitial_window_system. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-54
author Karoly Lorentey <lorentey@elte.hu>
date Sun, 11 Jan 2004 21:59:40 +0000
parents 4aa172a45af1
children 82c3b4da43ca
line wrap: on
line diff
--- a/src/keyboard.c	Sun Jan 11 11:26:00 2004 +0000
+++ b/src/keyboard.c	Sun Jan 11 21:59:40 2004 +0000
@@ -10503,8 +10503,7 @@
 
 #ifndef DOS_NT
   /* this causes startup screen to be restored and messes with the mouse */
-  if (FRAME_TERMCAP_P (SELECTED_FRAME ()))
-    reset_sys_modes (CURTTY ());
+  reset_all_sys_modes ();
 #endif
 
 #ifdef SIGIO
@@ -10542,13 +10541,12 @@
         tty->meta_key = 2;
     }
   
-  if (FRAME_TERMCAP_P (XFRAME (selected_frame)) && !NILP (quit))
+  if (!NILP (quit))
     /* Don't let this value be out of range.  */
-    quit_char = XINT (quit) & (CURTTY ()->meta_key ? 0377 : 0177);
+    quit_char = XINT (quit) & (NILP (meta) ? 0177 : 0377);
 
 #ifndef DOS_NT
-  if (FRAME_TERMCAP_P (XFRAME (selected_frame)) && CURTTY ()->type)
-    init_sys_modes (CURTTY ());
+  init_all_sys_modes ();
 #endif
 
 #ifdef POLL_FOR_INPUT