From: Chris Hanson Date: Tue, 14 May 1996 01:24:18 +0000 (+0000) Subject: Change definition of UPDATE-INFERIOR! in order to centralize the X-Git-Tag: 20090517-FFI~5521 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=64eead9cd299dc6521582c11f3059b856458c979;p=mit-scheme.git Change definition of UPDATE-INFERIOR! in order to centralize the testing of DISPLAY-STYLE when deciding whether or not to update the inferior. --- diff --git a/v7/src/edwin/buffrm.scm b/v7/src/edwin/buffrm.scm index de5499e64..3b7c8c8f3 100644 --- a/v7/src/edwin/buffrm.scm +++ b/v7/src/edwin/buffrm.scm @@ -1,8 +1,8 @@ ;;; -*-Scheme-*- ;;; -;;; $Id: buffrm.scm,v 1.50 1994/09/08 20:34:04 adams Exp $ +;;; $Id: buffrm.scm,v 1.51 1996/05/14 01:24:05 cph Exp $ ;;; -;;; Copyright (c) 1986, 1989-94 Massachusetts Institute of Technology +;;; Copyright (c) 1986, 1989-96 Massachusetts Institute of Technology ;;; ;;; This material was developed by the Scheme project at the ;;; Massachusetts Institute of Technology, Department of @@ -88,20 +88,17 @@ (define-method buffer-frame (:update-display! window screen x-start y-start xl xu yl yu display-style) ;; Assumes that interrupts are disabled. - (if (or display-style (inferior-needs-redisplay? text-inferior)) - (update-inferior! text-inferior screen x-start y-start - xl xu yl yu display-style - buffer-window:update-display!)) - (if (and modeline-inferior - (or display-style (inferior-needs-redisplay? modeline-inferior))) + (update-inferior! text-inferior screen x-start y-start + xl xu yl yu display-style + buffer-window:update-display!) + (if modeline-inferior (update-inferior! modeline-inferior screen x-start y-start xl xu yl yu display-style modeline-window:update-display!)) - (if (or display-style (inferior-needs-redisplay? border-inferior)) - (update-inferior! border-inferior screen x-start y-start - xl xu yl yu display-style - vertical-border-window:update-display!)) - true) + (update-inferior! border-inferior screen x-start y-start + xl xu yl yu display-style + vertical-border-window:update-display!) + #t) (define (initial-modeline! frame modeline?) ;; **** Kludge: The text-inferior will generate modeline events, so diff --git a/v7/src/edwin/bufwin.scm b/v7/src/edwin/bufwin.scm index ec1d18f09..7cb917f73 100644 --- a/v7/src/edwin/bufwin.scm +++ b/v7/src/edwin/bufwin.scm @@ -1,8 +1,8 @@ ;;; -*-Scheme-*- ;;; -;;; $Id: bufwin.scm,v 1.304 1995/02/16 22:45:37 cph Exp $ +;;; $Id: bufwin.scm,v 1.305 1996/05/14 01:24:10 cph Exp $ ;;; -;;; Copyright (c) 1986, 1989-95 Massachusetts Institute of Technology +;;; Copyright (c) 1986, 1989-96 Massachusetts Institute of Technology ;;; ;;; This material was developed by the Scheme project at the ;;; Massachusetts Institute of Technology, Department of @@ -762,17 +762,13 @@ (if (%window-override-string window) (update-override-string! window screen x-start y-start xl xu yl yu) (update-outlines! window)) - (let ((inferior (%window-blank-inferior window))) - (if (or display-style (inferior-needs-redisplay? inferior)) - (update-inferior! inferior screen x-start y-start - xl xu yl yu display-style - blank-window:update-display!))) - (let ((inferior (%window-cursor-inferior window))) - (if (or display-style (inferior-needs-redisplay? inferior)) - (update-inferior! inferior screen x-start y-start - xl xu yl yu display-style - cursor-window:update-display!))) - true) + (update-inferior! (%window-blank-inferior window) screen x-start y-start + xl xu yl yu display-style + blank-window:update-display!) + (update-inferior! (%window-cursor-inferior window) screen x-start y-start + xl xu yl yu display-style + cursor-window:update-display!) + #t) (define (buffer-window/redraw! window) (if (%window-debug-trace window) diff --git a/v7/src/edwin/window.scm b/v7/src/edwin/window.scm index 8b200076a..19670b181 100644 --- a/v7/src/edwin/window.scm +++ b/v7/src/edwin/window.scm @@ -1,8 +1,8 @@ ;;; -*-Scheme-*- ;;; -;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/edwin/window.scm,v 1.155 1992/03/13 10:52:40 cph Exp $ +;;; $Id: window.scm,v 1.156 1996/05/14 01:24:18 cph Exp $ ;;; -;;; Copyright (c) 1986, 1989-92 Massachusetts Institute of Technology +;;; Copyright (c) 1986, 1989-96 Massachusetts Institute of Technology ;;; ;;; This material was developed by the Scheme project at the ;;; Massachusetts Institute of Technology, Department of @@ -220,33 +220,31 @@ (let loop ((inferiors inferiors)) (if (null? inferiors) true - (and (or (not (or display-style - (inferior-needs-redisplay? (car inferiors)))) - (update-inferior! (car inferiors) screen x-start y-start - xl xu yl yu display-style updater)) + (and (update-inferior! (car inferiors) screen x-start y-start + xl xu yl yu display-style updater) (loop (cdr inferiors)))))) (define (update-inferior! inferior screen x-start y-start xl xu yl yu display-style updater) - ;; Assumes (OR DISPLAY-STYLE (INFERIOR-NEEDS-REDISPLAY? INFERIOR)) - (let ((window (inferior-window inferior)) - (xi (inferior-x-start inferior)) - (yi (inferior-y-start inferior))) - (and (or (not xi) - (clip-window-region-1 (fix:- xl xi) - (fix:- xu xi) - (window-x-size window) - (lambda (xl xu) - (clip-window-region-1 (fix:- yl yi) - (fix:- yu yi) - (window-y-size window) - (lambda (yl yu) - (updater window - screen (fix:+ x-start xi) (fix:+ y-start yi) - xl xu yl yu display-style)))))) - (begin - (set-car! (inferior-redisplay-flags inferior) false) - true)))) + (or (not (or display-style (inferior-needs-redisplay? inferior))) + (let ((window (inferior-window inferior)) + (xi (inferior-x-start inferior)) + (yi (inferior-y-start inferior))) + (and (or (not xi) + (clip-window-region-1 (fix:- xl xi) + (fix:- xu xi) + (window-x-size window) + (lambda (xl xu) + (clip-window-region-1 (fix:- yl yi) + (fix:- yu yi) + (window-y-size window) + (lambda (yl yu) + (updater window + screen (fix:+ x-start xi) (fix:+ y-start yi) + xl xu yl yu display-style)))))) + (begin + (set-car! (inferior-redisplay-flags inferior) #f) + #t))))) (declare (integrate-operator clip-window-region-1)) (define (clip-window-region-1 al au bs receiver)