From 21c55637661ddf68dda14380538d381db5b82eb8 Mon Sep 17 00:00:00 2001 From: Chris Hanson Date: Wed, 2 Sep 1992 02:35:42 +0000 Subject: [PATCH] Export procedures to force focus to a particular Edwin screen. --- v7/src/edwin/edwin.pkg | 6 ++++-- v7/src/edwin/xterm.scm | 14 ++++++++++---- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/v7/src/edwin/edwin.pkg b/v7/src/edwin/edwin.pkg index d118404ae..a341018d7 100644 --- a/v7/src/edwin/edwin.pkg +++ b/v7/src/edwin/edwin.pkg @@ -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!))) diff --git a/v7/src/edwin/xterm.scm b/v7/src/edwin/xterm.scm index 36a4bd3b5..982daca67 100644 --- a/v7/src/edwin/xterm.scm +++ b/v7/src/edwin/xterm.scm @@ -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 ;;; @@ -206,11 +206,17 @@ (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))) -- 2.25.1