Subject: Re: toolbar bug

From: Adrian Robert <[email-masked]>
Date: Fri, 6 Mar 2009 16:56:05 +0200

The calculation method that was commented out in x_set_window_size()  
works here, and I've committed it to CVS.  As mentioned in the  
comment, this would sometimes fail previously if the toolbar had not  
been displayed yet.  I believe the relevant call would be [toolbar  
setVisible: true] and this normally happens in nsmenu.c:  
ns_update_toolbar().  When a new frame is created, it is initially  
set to NOT visible in EmacsView-initFrameFromEmacs, because it will  
be turned on if needed and after it is ready by ns_update_toolbar().   
However, if this gets called AFTER x_set_window_size(), it could  
cause the failure.  If you still see it in your environment, could  
you try throwing in a call to [[view toolbar] setVisible: true] in  
the 'if (tb)' section before calling frameRectForContentRect, and see  
if that helps?

BTW I changed the order of the COCOA and GNUstep implementations to  
agree with the XXX comment just above.  This was accidentally  
reversed during a time when emacs-devel was asking me to get rid of  
one of NS_IMPL_COCOA, NS_IMPL_GNUSTEP and I did not realize at first  
that this was impossible.

thanks,
Adrian