Extend handling of simple events to include deletion of non-selected
authorChris Hanson <org/chris-hanson/cph>
Sun, 1 Aug 1993 05:06:25 +0000 (05:06 +0000)
committerChris Hanson <org/chris-hanson/cph>
Sun, 1 Aug 1993 05:06:25 +0000 (05:06 +0000)
screens.

v7/src/edwin/edwin.pkg
v7/src/edwin/input.scm

index 78a71157f9fd9b310367c5d8b55c8823cfd542ca..8c37f9eb14cdb3ece81b67a06b930664379ff9d5 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: edwin.pkg,v 1.120 1993/08/01 00:15:52 cph Exp $
+$Id: edwin.pkg,v 1.121 1993/08/01 05:06:25 cph Exp $
 
 Copyright (c) 1989-1993 Massachusetts Institute of Technology
 
@@ -419,6 +419,8 @@ MIT in each case. |#
          execute-command
          execute-command-history-entry
          initialize-command-reader!
+         input-event/operands
+         input-event/operator
          input-event/type
          input-event?
          keyboard-keys-read
index 8df6fe0c69cfa9f86c68ac478720f1feb9d01b5a..a3fa94bde843af9383fb0c6d34e56c4e970505d7 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;;    $Id: input.scm,v 1.94 1993/08/01 00:15:55 cph Exp $
+;;;    $Id: input.scm,v 1.95 1993/08/01 05:06:16 cph Exp $
 ;;;
 ;;;    Copyright (c) 1986, 1989-93 Massachusetts Institute of Technology
 ;;;
@@ -204,7 +204,13 @@ B 3BAB8C
   (let loop ()
     (let ((input (thunk)))
       (if (and (input-event? input)
-              (memq (input-event/type input) '(UPDATE SET-SCREEN-SIZE)))
+              (let ((type (input-event/type input)))
+                (or (eq? type 'UPDATE)
+                    (eq? type 'SET-SCREEN-SIZE)
+                    (and (eq? type 'DELETE-SCREEN)
+                         (eq? (input-event/operator input) delete-screen!)
+                         (not (selected-screen?
+                               (car (input-event/operands input))))))))
          (begin
            (apply-input-event input)
            (loop))