On Tue, Dec 19, 2017 at 12:05 PM, Eli Zaretskii <eliz@gnu.org> wrote:
> From: Robert Weiner <rsw@gnu.org>
> Date: Mon, 18 Dec 2017 14:19:23 -0500
> Cc: martin rudalics <rudalics@gmx.at>, emacs-devel <emacs-devel@gnu.org>
>
> > The usual way is to insert
> >
> >   (sit-for 0 t)
> >
> > before the code that needs the frame visible.  You can see this, e.g.,
> > in fancy-splash-frame and in some other places.
> >
>
> ​Ok, I'll add that.  Could you run the tests at the end
> of the file and see if this version of that function resolves
> your issues:

It still works erratically, at least on one system I tried it:
sometimes displays an incompletely rendered frame, sometimes triggers
an error with a backtrace, saying I attempted to delete a sole frame,
sometimes doesn't return to the original frame/window/buffer.  I will
take a closer look at what happens when I have time.

​Please lengthen the frame creation delay time and see if that changes the behavior.
Since frame creation is asynchronous, this is important.

Bob