Subject: bug#25542: 25.1; Restoring the frame from fullscreen to maximized

From: martin rudalics <[email-masked]>
Date: Thu, 10 Sep 2020 20:16:04 +0200

>> (2) Does 'toggle-frame-fullscreen' the second time when you type F11
 >>      correctly call
 >>
 >>     (set-frame-parameter frame 'fullscreen fullscreen-restore)
 >>
 >>     with 'fullscreen-restore' equal to 'maximized' at all?
 >
 > No.  The value of 'fullscreen-restore' is nil.  But if I repeat the experiment with the taskbar on the bottom, the value of fullscreen-restore is 'maximized'.

Thanks for telling me what I forgot to ask.  IIUC this means that after
maximizing the frame with the mouse, the value of

(frame-parameter nil 'fullscreen)

is nil.  Correct?  And what is its value if, instead, you maximize the
frame via 'toggle-frame-maximized'?

In either case the bug should be a consequence of the earlier mentioned

			if (x < 0 && y < 0)
			  store_frame_param (f, Qfullscreen, Qmaximized);

so we do not remember in the fullscreen parameter that the frame has
been maximized.  Apparently some check _is_ needed (why?) so probably
using

			if (x < 0 || y < 0)
			  store_frame_param (f, Qfullscreen, Qmaximized);

instead will fix it.  Can you try that (as I said elsewhere it will then
fail for borderless, maximized frames)?

martin