Subject: bug#74496: 30.0.91; fullscreen frame set with F11 is shifted when ctwm restarts

From: Van Ly <[email-masked]>
Date: Sun, 01 Dec 2024 09:59:23 +0000

martin rudalics <[email-masked]> writes:

>  > An emacs session that never uses CTWM's `toggle zoom' to "maximize"
>
> Could you please explain how that toggle works and how an emacs session
> can use it?  IIUC without it you see the problem below.  With it you
> don't see the problem.  Does it have any detrimental side-effects to set
> that toggle?
>

I use a CTWM keyboard shortcut that pops up a `Window' context menu over
the emacs frame.  Included is a section that lists

 Window
 - Zoom
 - Zoom-V
 - Zoom-H

Using `Window, Zoom' effects the `maximize' operation on the frame, the
frame border shows while the frame occupies all of the screen.  When
this maximized frame is in a CTWM virtual workspace and has as neighbors
that are F11 invoked fullscreen frames, CTWM restart does not cause the
shift at the bottom frame edge upwards by a few pixels.

>  >     5  ;; Z. F11 fullscreen after
>  >     6  (frame-geometry)
>  > => 7  ((outer-position -3 . -3) (outer-size 1920 . 1072) (external-border-size -3 . -3) (outer-border-width . 0) (title-bar-size 0 . 6) (menu-bar-external . t) (menu-bar-size 0 . 0) (tab-bar-size 1918 . 14) (tool-bar-external) (tool-bar-position . top) (tool-bar-size 0 . 0) (internal-border-width . 1))
>
> But this is a difference of 8 pixels and nowhere near the 50 pixels you
> mentioned earlier.
>

The 50 pixels was my rough guess estimate.  The measured value is 8 pixels.

>  >     8
>  >     9  ;; A. F11 fullscreen before
>  >    10  (frame-parameter nil 'fullscreen) ; => fullboth
>  >    11
>  >    12  ;; Z. F11 fullscreen after
>  >    13  (frame-parameter nil 'fullscreen) ;=> nil
>  >
>  > Using CTWM's `toggle zoom' to "maximize" allows the F11 fullscreen to
>  > persist across CTWM restart.
>
> Not really IIUC.  The 'fullscreen' status is reset in either case.
>

In an emacs session, I arrange for 3 CTWM virtual workspaces to each
display an emacs frame fullscreen invoked by F11.  CTWM restart causes
the bottom edge to shift upwards by 8 pixels.  Undesired behavior.

In a new, quit and start again, emacs session, I arrange for 3 CTWM
virtual workspaces to display 2 emacs frames fullscreen invoked by F11
and 1 emacs frame `maximized' full screen with border edges showing.
CTWM restart does not change how the frames are displayed.  Desired behavior.

Using CTWM's `Window, zoom' that sees the following result lets the F11
fullscreen and `maximized' full screen with border edges persist across
CTWM restart.  Desired behavior.

    =>27  (frame-parameter nil 'fullscreen) ; => maximized

The puzzle is why having only F11 `fullboth' fullscreens will shift the
bottom edge up by 8 pixels on CTWM restart.

Hope that helps.

-- 
vl