Subject: bug#45620: 28.0.50; Child frames should have their own border width and colour

From: Alan Third <[email-masked]>
Date: Thu, 28 Jan 2021 16:35:55 +0000

On Thu, Jan 28, 2021 at 10:42:18AM +0100, martin rudalics wrote:
> > Is there some simple test I can try? I had a quick look through the
> > thread but didn't see anything.
> 
> Please with emacs -Q define
> 
> (defun my-make-child-frame ()
>   (interactive)
>   (make-frame
>    `((parent-frame . ,(selected-frame))
>      (undecorated . t)
>      (left . 0.5)
>      (top . 0.5)
>      (width . 0.3)
>      (height . 0.3)
>      (internal-border-width . 3))))
> 
> then do
> 
> (setq frame (my-make-child-frame))
> 
> and finally perform the following two experiments:
> 
> (1) Customize the background of the faces 'internal-border' and
> 'child-frame-border'.  Only customizing the latter should affect the
> child frame.
> 
> (2) Do
> 
> (set-frame-parameter frame 'internal-border-width 7)
> (set-frame-parameter frame 'child-frame-border-width 1)
> 
> Either of them should change the border width of the child frame as
> indicated.  If you now do
> 
> (set-frame-parameter nil 'internal-border-width 5)
> 
> with your normal frame selected, that frame's internal border width
> should change but the child frame's border width should remain
> unaltered.

That all works as I expect on macOS, so I guess we can say it's fine?

> > (GNUstep builds work for me as long as I start with a .emacs that
> > turns off the menus. I can't work out what it is that's causing the
> > problem, and even the large rewrite of some of the menu code we did on
> > the master branch makes no difference. It's quite annoying.)
> 
> I'll try turning menus off the next time.  But the number of warnings
> when building has by now exceeded any reasonable limit.  I can no more
> see the wood for the trees

Ah yes, I'd forgotten about that. As I recall the errors are mostly
from the GNUstep headers, so I don't know if they're caused by some
incompatibility between recent versions of GCC and GNUstep, or if
we're setting some compiler flag that GNUstep dislikes.

I don't get these warnings on my old Debian Jessie build environment,
just on the newer Buster one, but Jessie's really old by now.
-- 
Alan Third