make sure we do not create a double fullscreen_bg
and also make sure we do not destroy it if it does not exist
Fixes: #274
         
        
        
          
conform the xdg-protocol with fullscreen translucent clients
see `setfullscreen()` for more info
         
        
        
          
always set the same monitor and tags for child clients of a client
fixes #272
         
        
        
          
do not focus clients if a layer surface is focused
         
        
        
          
force line-buffered stdout if stdout is not a tty
         
        
        
        
        
          
remove a useless check
if `s->role_data == NULL`, wlr_*_surface_from_wlr_surface() will return NULL
and we are checking it
         
        
        
        
        
          
only call wlr_seat_keyboard_notify_enter() if a keyboard is found
         
        
        
          
check pointer focus in arrange()
         
        
        
          
include DWLCFLAGS into linking step
         
        
        
          
arrange client's monitor if size has change since last commit
         
        
        
          
resize now takes `struct wlr_box` as parameter
         
        
        
          
check current and pending geometry to set c->resize to zero
Fixes #260
         
        
        
          
Checks for overflows for client max width and height
         
        
        
        
        
          
inline unmaplayersurface() into unmaplayersurfacenotify()
unmap signal is guaranted to be emitted before destroy signal
so is useless checking if it is mapped at destroy
         
        
        
          
avoid layer surface popups appearing below x{dg,wayland} clients
         
        
        
          
unconstrain layer shell popups from monitor size
unconstrain other popups from monitor usable area
         
        
        
          
use LayerSurface.mon when possible