Re: [Q] New frames not displayed correctly if buffer tabs off

Mike Alexander <[email protected]>
Newsgroups gmane.emacs.xemacs.windows
Message-ID <[email protected]>
--On Friday, March 21, 2003 8:59 AM +0100 "Michael Sperber [Mr. 
Preprocessor]" <[email protected]> wrote:

>>>>>> "Mike" == Mike Alexander <[email protected]> writes:
>
> Mike> --On Thursday, March 20, 2003 5:54 PM +0900 "Stephen J. Turnbull"
> Mike> <[email protected]> wrote:
>
>
> Mike> >
> Mike> How about 21.5?  Has it been committed there?
> Mike> >
>>> Not yet.  Note that Mike Sperber has changed the window config code.
>>> If you are not familiar with his changes there, I don't think it's a
>>> good idea to commit this.
>
> Mike> But I think it was those changes that caused this bug to appear
> Mike> in the first place.  Not that there is a bug in Mike's changes,
> Mike> but rather that those changes exposed a pre-existing bug in the
> Mike> Windows interface code.  I haven't tracked back exactly when the
> Mike> bug first appeared but it was about the time that Mike's changes
> Mike> were made.  I'm generally familiar with those changes, although I
> Mike> haven't studied them in detail, and think that this patch is
> Mike> consistent with them.

>
> It should be.  But I'm curious why it should have anything to do with
> the window-config changes---they use `set-frame-pixel-size.'  Is there
> a code path from there to your patch?

No, it's not that.  What's happening is that after a call to make-frame 
xemacs gets into redisplay_frame for the new frame with both size_slipped 
and size_change_pending still set.  If buffer tabs are on then this doesn't 
happen since the process of adjusting the frame for the gutter processes 
the size change.  Since size_slipped is on, redisplay_frame calls 
adjust_frame_size which, on Windows, eventually gets into 
mswindows_set_frame_size.  Without the call to change_frame_size that I 
added the frame size never gets processed and the size of the root window 
is left very tiny with most of the frame not included in any window.

My guess is that before your changes there was something else happening 
that caused the frame size to be processed so the bug in the Windows code 
didn't matter.  This no longer happens (and it probably isn't worth while 
figuring out why) so the bug was exposed.

Mike Alexander                <mailto:[email protected]>
Arbortext, Inc.               +1-734-997-0200
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.