Subject: Re: bug#69525: 30.0.50; MacOS: New warnings on stderr

From: Alan Third <[email-masked]>
Date: Tue, 5 Mar 2024 12:59:30 +0000

On Tue, Mar 05, 2024 at 05:38:26AM +0100, Gerd Möllmann wrote:
> Alan Third <[email-masked]> writes:
> 
> > I wonder if this is something we're doing (like makeKeyAndOrderFront
> > being called on the new frame and it not checking canBecomeKeyWindow)
> > or if there's some other step we need to take to prevent this. I'm
> > fairly sure that I've never seen these warnings so presumably they're
> > new since 10.14.
> 
> You are thinking of this in nsterm.m?
> 
>   - (void)makeKeyAndOrderFront:(id)sender
>   {
>     NSTRACE ("[EmacsWindow makeKeyAndOrderFront:]");
> 
>     if ([self parentWindow])
>       {
>         [self orderFront:sender];
>         [self makeKeyWindow];
>       }
>     else
>       [super makeKeyAndOrderFront:sender];
>   }

Yes. I think it's the only place we actually call makeKeyWindow
ourselves, so perhaps it should have a test. Could be worth it just to
see if it makes the messages go away.

So I guess just something like

    if ([self canBecomeKeyWindow])
      [self makeKeyWindow];

-- 
Alan Third