Change fullscreen policies
When a new client is spawned, fullscreen isn't disabled for all clients
in that monitor any more.
Instead, all fullscreen clients are kept fullscreen, while other clients
spawn in the background.
When fullscreen is disabled, all clients are rearranged.
This is made to make dwl more flexible allowing multiple fullscreen
clients at the same time, have floating clients on top of a fullscreen
one and let stuff happen without quitting fullscreen, like many other
WMs and DEs.
quitallfullscreen() even when enabling fullscreen
Disable fullscreen on all visible clients in that monitor also before
enabling it on another client.
quitallfullscreen() is reintroduced becouse is now more useful
set c->isfullscreen later to avoid making quitallfullscreen() disable
fullscreen on the current client
Remove goto render (easier merge)
Readme: achieve fullscreen + allow borderpx = 0
Quit fullscreen on new x11 window
After the removal of quitfullscreen() dwl wouldn't compile widh xwayland
enabled because createnotifyx11 was still using the old function
Delete quitfullscreen()
quitfullscreen() was replicating the functionalities of setfullscreen(c,
0)
Reusing setfullscreen() in quitfullscreen() leads to a 3 line function,
which is useless since quitfullscreen() is used once anyway
Keep windows fullscreen after redraw
This fixes the bug that happens when changing workspace (or any time
arrange() is called) where there are fullscreen windows, which are still
fullscreen but leave the space for layer surfaces like waybar (which
should be hidden when going fullscreen)
Also as soon one fullscreen window is found hte function returns to
improve efficiency
use m->m (fullscreen on top of layers)
Merge pull request #1 from guidocella/fullscreen
fix typo
Toggle fullscreen on all clients
mod+e allows to toggle fullscreen any client, even those who don't
support it themselves
Handle new windows
Windows lose fullscreen state when a new window is created in the same
tag
Same fscreen func for xdg and xwayland
Restore windows after fullscreen
Store position and size of windows before going fullscreen. This is more
efficient than arrange() and also works with floating windows
All the clients keep their original position because arrange() isn't
used after quitting fullscreen
No borders on fullscreen windows
Some code has been borrowed from the smartBorders patch