new function to notify keyboard enter
set monitor for clients that don't have one in updatemons()
only if selmon is enabled and the clients are mapped
handle client_from_wlr_surface() receiving a subsurface
always set the same monitor and tags for child clients of a client
fixes #272
remove a useless check
if `s->role_data == NULL`, wlr_*_surface_from_wlr_surface() will return NULL
and we are checking it
unconstrain layer shell popups
also unconstrain popups from monitor's usable area
move ugglyness to client.h
improve client_from_wlr_surface()
add a new function to get a client from a wlr_surface
Check if XWayland client size_hints are NULL
fix segfault when dragging chromium tabs
add missing return in client_is_floating_type()
This causes all Xwayland clients to be treated as floating
improve floating detection
mostly copied from sway
Merge pull request #204 from djpohly/scenegraph3
merge scenegraph3
Merge branch 'main' into scenegraph
do not allow set client size less than its min size
constraint popups to its parent client
Closes: #146
Closes: #155
Merge branch 'main' into scenegraph