Subject: Re: bug#25521: 26.0.50; After (make-frame '((name . "foo"))) (select-frame-by-name "foo") doesn't see the frame

From: "Alex \(QWxleA\)" <[email-masked]>
Date: Wed, 25 Jan 2017 08:47:33 +0200

Eli Zaretskii writes:

>> From: Alex 'QWxleA' Poslavsky <[email-masked]>
>> Date: Tue, 24 Jan 2017 23:05:34 +0200
>> 
>> 
>> The following, used as ~/.emacs.d/init.el:
>> 
>> (require 'org)
>> 
>> (defun qw ()
>>   (interactive)
>>   "Create a new capture frame helper-function" 
>>   (make-frame '((name . "foo")
>>                 (width . 120)
>>                 (height . 25)))
>>   (select-frame-by-name "foo") 
>>   (org-agenda))
>> 
>> works on emacs24, but not on a current git, build 24 Jan 2017. The
>> error-message is: select-frame-by-name: There is no frame named ‘foo’
>
> Does it help to insert a short wait before the select-frame-by-name
> call?

Yes, the following works:

(require 'org)

(defun qw ()
  (interactive)
  "Create a new capture frame helper-function" 
  (make-frame '((name . "foo")
                (width . 120)
                (height . 25)))
  (sleep-for 0.00134)
  (select-frame-by-name "foo") 
  (org-agenda))

If sleep gets any shorter it no longer works. The wait is short enough
not to be noticed. Good enough for me, thanks for the suggestion.