Subject: Re: bug#52666: 27.0.50; Unexpected mode line flickering when creating frames

From: Eli Zaretskii <[email-masked]>
Date: Mon, 20 Dec 2021 17:11:22 +0200

> From: Markus Triska <[email-masked]>
> Date: Sun, 19 Dec 2021 21:42:21 +0100
> 
>     (while t
>       (let ((f (make-frame `((parent-frame . ,(selected-frame))
>                              (left . 200)
>                              (top . 200)))))
>         (set-frame-width f 200 nil t)
>         (set-frame-height f 200 nil t)
>         (sit-for 0.3)
>         (delete-frame f)))
> 
> and then invoke Emacs with:
> 
>     $ emacs -Q -l flicker.el
> 
> The form repeatedly creates and destroys a child frame, offset 200
> pixels both horizontally and vertically from the top left corner of the
> frame.
> 
> Unexpectedly, the mode line flickers in many (though apparently not all)
> iterations, starting at 200 pixels horizontally from the left, even
> though the frame does not overlap the mode line in any way.

I think the child frame is first placed in some location determined by
the WM, and then moved to the place the code says.  Martin, is that
so?

If I'm right, then the flickering of the parent frame is when the
child frame intersects some of its elements.