changeset 357:1ad871406b12

*** empty log message ***
author Jim Blandy <jimb@redhat.com>
date Sat, 27 Jul 1991 03:27:24 +0000
parents 5b180834eacf
children 71c9042fb90d
files lisp/terminal.el src/frame.h src/termhooks.h
diffstat 3 files changed, 20 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/terminal.el	Fri Jul 26 23:31:34 1991 +0000
+++ b/lisp/terminal.el	Sat Jul 27 03:27:24 1991 +0000
@@ -975,9 +975,10 @@
 		 (progn (goto-char (point-max))
 			(recenter -1)))))))
 
-(defvar te-stty-string "stty -nl new dec echo"
-  "Command string (to be interpreted by \"sh\") which sets the modes
-of the virtual terminal to be appropriate for interactive use.")
+(defvar te-stty-string "stty -nl dec echo"
+  "Shell command to set terminal modes for terminal emulator.")
+;; This used to have `new' in it, but that loses outside BSD
+;; and it's apparently not needed in BSD.
 
 (defvar explicit-shell-file-name nil
   "*If non-nil, is file name to use for explicitly requested inferior shell.")
--- a/src/frame.h	Fri Jul 26 23:31:34 1991 +0000
+++ b/src/frame.h	Sat Jul 27 03:27:24 1991 +0000
@@ -70,6 +70,12 @@
   /* Name of this screen: a Lisp string.  */
   Lisp_Object name;
 
+  /* The screen which should recieve keystrokes that occur in this
+     screen.  This is usually the screen itself, but if the screen is
+     minibufferless, this points to the minibuffer screen when it is
+     active.  */
+  Lisp_Object focus_screen;
+
   /* This screen's root window.  Every screen has one.
      If the screen has only a minibuffer window, this is it.
      Otherwise, if the screen has a minibuffer window, this is its sibling.  */
@@ -174,12 +180,14 @@
 #define SCREEN_DELETEN_COST(s) (s)->delete_n_lines_cost
 #define SCREEN_MESSAGE_BUF(s) (s)->message_buf
 #define SCREEN_SCROLL_BOTTOM_VPOS(s) (s)->scroll_bottom_vpos
+#define SCREEN_FOCUS_SCREEN(s) (s)->focus_screen
 
 #define CHECK_SCREEN(x, i) \
   { if (XTYPE ((x)) != Lisp_Screen) x = wrong_type_argument (Qscreenp, (x)); }
 extern Lisp_Object Qscreenp;
 
 extern struct screen *selected_screen;
+extern struct screen *last_nonminibuf_screen;
 
 extern struct screen *make_terminal_screen ();
 extern struct screen *make_screen ();
@@ -198,6 +206,7 @@
 #define SCREEN_PTR int
 
 extern int selected_screen;
+#define last_nonminibuf_screen selected_screen
 
 #define XSCREEN(s) selected_screen
 #define WINDOW_SCREEN(w) selected_screen
@@ -228,7 +237,9 @@
 #define SCREEN_INSERTN_COST(screen) insert_n_lines_cost
 #define SCREEN_DELETEN_COST(screen) delete_n_lines_cost
 #define SCREEN_MESSAGE_BUF(s) message_buf
-#define SCREEN_SCROLL_BOTTOM_VPOS scroll_bottom_vpos;
+#define SCREEN_SCROLL_BOTTOM_VPOS(s) scroll_bottom_vpos
+
+#define CHECK_SCREEN(x, i) { ; }
 
 extern int screen_width, screen_height;
 extern int cursX, cursY;
--- a/src/termhooks.h	Fri Jul 26 23:31:34 1991 +0000
+++ b/src/termhooks.h	Sat Jul 27 03:27:24 1991 +0000
@@ -63,12 +63,10 @@
    button releases.  */
 extern int (*mouse_tracking_enable_hook) ( /* int ENABLE */ );
 
-/* When reading from a minibuffer in a different screen, Emacs wants
-   to shift the highlight from the selected screen to the minibuffer's
-   screen; under X, this means it lies about where the focus is.
-   This hook tells the window system code to re-decide where to put
-   the highlight.  */
-extern void (*screen_rehighlight_hook) ( /* SCREEN_PTR s */ );
+/* When a screen's focus redirection is changed, this hook tells the
+   window system code to re-decide where to put the highlight.  Under
+   X, this means that the system lies about where the focus is.  */
+extern void (*screen_rehighlight_hook) ( /* void */ );
 
 /* If nonzero, send all terminal output characters to this stream also.  */