xmonad / xmonad-contrib

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

`ewmhFullscreen` doesn't restore floating windows #865

Open geekosaur opened 10 months ago

geekosaur commented 10 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 10 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 10 months ago

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

geekosaur commented 10 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 10 months ago

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