configure xwayland surfaces without monitors
For wine clients often configurex11() is called before mapnotify() and
therefore c->mon is NULL. configurex11 just returns early in that case,
letting these clients stay in the wrong size. For example only the top
left part of winecfg and wine uninstaller is drawn, or confirmation
dialogs like when closing wine notepad are too big. Fix this by
configuring their surfaces like before 88d386b.
         
        
        
          
implement the virtual pointer protocol
This is used by programs like warpd.
         
        
        
        
        
          
No need to call updatemons ourselves
The output manager in wlroots emits an output_layout.change event when
anything changes, so updatemons will be called anyway.
ΔSLOC: -1
         
        
        
        
        
          
request description before logs
         
        
        
          
turn on -Wfloat-conversion
         
        
        
        
        
          
acknowledgements refactoring
         
        
        
          
clarify the code will be kept as small as possible
         
        
        
          
check if monitor is null before setting gamma
fixes segfault on monitor disconnect when using wlsunset
         
        
        
        
        
          
prefer functionality over philosophy
         
        
        
          
add acknowledgment to djpohly
         
        
        
          
Destroy fullscreen node after moving clients off mon
         
        
        
          
fix posible NULL-dereference in wl_surface.commit handler
         
        
        
          
unset DISPLAY before setting up xwayland
         
        
        
          
only execute the first keybinding
         
        
        
          
more style fixes
missed from the previous iteration