xmonad / xmonad-contrib

Contributed modules for xmonad
https://xmonad.org
BSD 3-Clause "New" or "Revised" License
584 stars 274 forks source link

`ewmhFullscreen` doesn't restore floating windows #865

Open geekosaur opened 8 months ago

geekosaur commented 8 months ago

If a floating window is made fullscreen and then toggled back, it is sunk instead of floated. The code at https://github.com/xmonad/xmonad-contrib/blob/afd6824ce00063bb8e9b7a1c5daf0737c2f61616/XMonad/Hooks/EwmhDesktops.hs#L442C5-L444 unconditionally sinks the window when _NET_WM_STATE_FULLSCREEN is removed.

This will require saving the old window position for floats; the current code assumes sinking the window will handle positioning.

Checklist

geekosaur commented 8 months ago

This could reasonably be parked until it matters to someone. Also, it's better not to try to address it until #866 goes in, since otherwise there will be a merge conflict.

liskin commented 8 months ago

I believe https://github.com/xmonad/xmonad-contrib/pull/768 solved this already.

geekosaur commented 8 months ago

"This commit only adds the hooks. Neither of the motivations are dealt with yet, so the docs are a bit terse still."

liskin commented 8 months ago

Well that's the first commit. The following one adds the thing.