Export procedures to force focus to a particular Edwin screen.
authorChris Hanson <org/chris-hanson/cph>
Wed, 2 Sep 1992 02:35:42 +0000 (02:35 +0000)
committerChris Hanson <org/chris-hanson/cph>
Wed, 2 Sep 1992 02:35:42 +0000 (02:35 +0000)
v7/src/edwin/edwin.pkg
v7/src/edwin/xterm.scm

index d118404ae1b36f4acb1476585f66ecc11e60b647..a341018d7074749135935af991300adf12d8c7ae 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/edwin/edwin.pkg,v 1.96 1992/08/27 06:38:31 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/edwin/edwin.pkg,v 1.97 1992/09/02 02:35:36 cph Exp $
 
 Copyright (c) 1989-1992 Massachusetts Institute of Technology
 
@@ -273,7 +273,9 @@ MIT in each case. |#
   (files "xterm")
   (parent (edwin))
   (export (edwin)
-         x-screen-auto-raise)
+         x-screen-auto-raise
+         xterm-screen/flush!
+         xterm-screen/grab-focus!)
   (export (edwin x-commands)
          screen-xterm)
   (initialization (initialize-package!)))
index 36a4bd3b56e8be0099efddb0dda4e77a795d3748..982daca67ed33adb2c737ee69dbd42c1e4517f67 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;;    $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/edwin/xterm.scm,v 1.33 1992/03/25 21:40:10 cph Exp $
+;;;    $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/edwin/xterm.scm,v 1.34 1992/09/02 02:35:42 cph Exp $
 ;;;
 ;;;    Copyright (c) 1989-92 Massachusetts Institute of Technology
 ;;;
   (set-screen-selected?! screen true)
   (let ((xterm (screen-xterm screen)))
     (xterm-enable-cursor xterm true)
-    (xterm-draw-cursor xterm)
-    (if (and last-focus-time (screen-visible? screen))
-       (x-window-set-input-focus xterm last-focus-time)))
+    (xterm-draw-cursor xterm))
+  (xterm-screen/grab-focus! screen)
   (xterm-screen/flush! screen))
 
+(define (xterm-screen/grab-focus! screen)
+  (and last-focus-time
+       (screen-visible? screen)
+       (begin
+        (x-window-set-input-focus (screen-xterm screen) last-focus-time)
+        true)))
+
 (define (xterm-screen/exit! screen)
   (set-screen-selected?! screen false)
   (let ((xterm (screen-xterm screen)))