From xemacs-m  Sat May 31 20:54:26 1997
Received: from crystal.WonderWorks.COM (crystal.WonderWorks.com [192.203.206.1])
	by xemacs.org (8.8.5/8.8.5) with ESMTP id UAA17365
	for <xemacs-beta@xemacs.org>; Sat, 31 May 1997 20:54:25 -0500 (CDT)
Received: by crystal.WonderWorks.COM 
	id QQcrzj02290; Sat, 31 May 1997 21:54:26 -0400 (EDT)
Date: Sat, 31 May 1997 21:54:26 -0400 (EDT)
Message-Id: <QQcrzj02290.199706010154@crystal.WonderWorks.COM>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
From: Kyle Jones <kyle_jones@wonderworks.com>
To: XEmacs Developers <xemacs-beta@xemacs.org>
Subject: Re: [PATCH] 20.3-b3: new tty frame selected too soon
In-Reply-To: <kiglo4vp0t4.fsf@jagor.srce.hr>
References: <QQcrzc00937.199706010008@crystal.WonderWorks.COM>
	<kigraenp3xg.fsf@jagor.srce.hr>
	<QQcrzh01829.199706010116@crystal.WonderWorks.COM>
	<kiglo4vp0t4.fsf@jagor.srce.hr>
X-Mailer: VM 6.32 under 20.3 XEmacs Lucid (beta3)
X-Face: /cA45WHG7jWq>(O3&Z57Y<"WsX5ddc,4c#w0F*zrV#=M
        0@~@,s;b,aMtR5Sqs"+nU.z^CSFQ9t`z2>W,S,]:[+2^
        Nbf6v4g>!&,7R4Ot4Wg{&tm=WX7P["9%a)_da48-^tGy
        ,qz]Z,Zz\{E.,]'EO+F)@$KtF&V

Hrvoje Niksic writes:
 > Kyle Jones <kyle_jones@wonderworks.com> writes:
 > 
 > > The patch that I sent definitely isn't the final solution.  But it
 > > is part of it.  The missing part might involve selection of the
 > > visible tty frame happening in Fnext_frame.
 > 
 > `Fnext_frame' is a screaming nightmare.

Ooops, actually I meant Fnext_event.

 > In fact, the nightmare is not in `Fnext_frame', as much as it is in
 > the functions that use it.
 > 
 > For example, in many places in Lisp (e.g. at `other-frame') next-frame 
 > is called and asked for the next visible frame.  Since only 1 TTY
 > frame is visible, `C-x 5 o' did nothing.  So I had to add a
 > kludgissimo to the situation by making `(next-frame 'visible)' return
 > TTY frames, even if they are not visible.

You're fighting the system's design, I'm afraid.  The frames
should all be considered visible, and the display code should
only repaint the selected one.

