Subject: Re: bug#31920: 26.1; frame appears in wrong part of desktop after restoring frameset from fullscreen

From: Robert Pluim <[email-masked]>
Date: Thu, 21 Jun 2018 12:25:32 +0200

martin rudalics <[email-masked]> writes:

>> In GNU Emacs 26.1 (build 1, x86_64-redhat-linux-gnu, GTK+ Version 3.22.30)
>>   of 2018-06-04 built on buildvm-10.phx2.fedoraproject.org
>
> Thanks for the report.  Here I can't reproduce the behavior you
> observe on Windows XP even if I modify your recipe in various ways.
> Maybe someone else can give it a try.
>

I see this on my Ubuntu 16.04 box, also running KDE, but only if I go
through the restore cycle twice. Also, if I restore frameset a again,
the frame ends up in the right place, ie:

restore a -> OK
restore b -> OK
restore a -> NOK
restore a -> OK

> Do you really have to split the window in step 1 and delete a window
> in step 2 to produce the bug?  These actions appear unrelated to the
> behavior you observe since window managers pretty much ignore Emacs
> windows.

I donʼt need to split the window.

> Also what happens if, in step 2, you maximize the window instead of
> making it fullscreen?  frameset.el has
>
>     (modify-frame-parameters frame
> 			     (if (eq (frame-parameter frame 'fullscreen) fullscreen)
> 				 ;; Workaround for bug#14949
> 				 (assq-delete-all 'fullscreen filtered-cfg)
> 			       filtered-cfg))
>
> which might affect the behavior on your system.  Can you take out this
> form, reevaluate 'frameset--restore-frame' and see whether anything
> changes?
>
> And maybe you could also try with
>
>     (when (and force-onscreen
> 	       ;; FIXME: iconified frames should be checked too,
> 	       ;; but it is impossible without deiconifying them.
> 	       (not (eq (frame-parameter frame 'visibility) 'icon)))
>       (frameset-move-onscreen frame force-onscreen))
>
> removed from 'frameset--restore-frame'.

Neither of those make any difference for me, nor does using
toggle-frame-maximized.

Regards

Robert