GNU bug report logs - #3303
delete-frame raises old (invisible) frame

Previous Next

Packages: ns, emacs;

Reported by: David Reitter <david.reitter <at> gmail.com>

Date: Sat, 16 May 2009 01:15:04 UTC

Severity: normal

Merged with 3204

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: David Reitter <david.reitter <at> gmail.com>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: Adrian Robert <Adrian.B.Robert <at> gmail.com>, 3303 <at> debbugs.gnu.org
Subject: bug#3303: delete-frame raises old (invisible) frame
Date: Sun, 17 May 2009 15:12:39 -0400
[Message part 1 (text/plain, inline)]
On May 17, 2009, at 3:06 PM, Stefan Monnier wrote:
>
> Still, the
>
>   #ifdef NS_IMPL_COCOA
>     /* term gets no other notification of this */
>     if (for_deletion)
>       Fraise_frame(Qnil);
>   #endif
>
> in frame.c looks plain wrong and should probably just be deleted:
> frame-selection is never intended to raise (or lower) any frame.
> If this `raise' is really necessary, then it needs a much more  
> extensive
> comment justifying its presence.
> Adrian, could you remove this code, or justify clearly why it's here?

I think it is there because we need to raise another (visible) frame  
when a frame is deleted.  This is standard behavior (and sensible).   
However, this should not occur if the other frame is hidden, i.e. if  
there is no visible and uniconified frame.  Im currently experimenting  
with something like this:

#ifdef NS_IMPL_COCOA
  /* term gets no other notification of this */
  if (for_deletion && FRAME_VISIBLE_P (XFRAME (selected_frame))
      && FRAME_LIVE_P (XFRAME (selected_frame))
      && ! FRAME_ICONIFIED_P (XFRAME (selected_frame)))
    Fraise_frame(Qnil);
#endif

- D
[smime.p7s (application/pkcs7-signature, attachment)]

This bug report was last modified 13 years and 289 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.