Subject: bug#15133: 24.3.50; REGRESSION: `after-make-frame-functions' now run with wrong frame selected

From: martin rudalics <[email-masked]>
Date: Mon, 19 Aug 2013 22:07:10 +0200

> Sorry, I don't understand.  What "both" would you like me to try?  This
 > needs to work as it did before the regression - both `pop-to-buffer'
 > and `display-buffer'.

Did `display-buffer' work correctly?

 > But first, I don't understand either why there should be any difference.
 > Why shouldn't functions on `after-make-frame-functions' always be passed
 > the new frame as argument, as has been the case in the past?  There is a
 > `before-make-frame-functions' hook for passing the originally selected
 > frame.

The problem is that the new frame doesn't yet show the buffer you want
to display when `after-make-frame-functions' is called.

 > Perhaps you are thinking that this is about _selecting_ the new frame?
 > (I mistakenly mentioned "is selected" above, when I meant is passed to
 > the hook functions.)
 >
 > I can understand that `pop-to-buffer' and `display-buffer' might act
 > differently wrt selecting the buffer's frame.  But I do not understand
 > why suddenly the functions on hook `after-make-frame-functions' should
 > be passed the original frame as arg instead of the new frame.

Do they really get passed the original frame?

 > How else can someone invoke a function on the new frame as part of the
 > process of frame creation?

Please check again.

martin