Assign the shell to the shell_surface on creation (for future
dereference)
Make grab/move/resize work again for wayland-clients
Signed-off-by: Chris Michael <cp.michael@samsung.com>
wl_resource_find_for_client.
More fixups for wl_resource functions (_get_client, set_destructor, etc)
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Destroy surface ping_timer when surface is destroyed.
Use wl_resource_get_client for client comparison
Signed-off-by: Chris Michael <cp.michael@samsung.com>
for desktop_shell).
Use wl_resource_set_destructor.
When shell gets unbound, don't "free" the resource (handled internally
via wayland).
Signed-off-by: Chris Michael <cp.michael@samsung.com>
this is currently GUARANTEED to break with override shaped windows, which means that if such a window is ever opened, it will NEVER receive input unless it is placed over another client window. this is due to a limitation in evas where it is impossible to (de)select input regions which forced me to choose between either having shaped override windows (such as desktop recorders) block all mouse input to the screen OR have normal override windows (gtk menus and popups...) not able to generate their own input shape at all
it has no mode set yet, then we try to get the preferred mode. If that
fails we will try the crtc size, if That fails we will fallback to a
safe 640x480. When getting preferred size, if the output does not
specifiy a preferred mode (but does list availabe modes), then we will
assume the largest size.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
outputs to zero, and free any allocated outputs before trying to apply
settings.
Also, check for valid mode (not 0) before trying to fetch mode_info.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Wayland changes.
NB: Although the code does compile and clients do run, I RECOMMEND
that you do not use this feature right now. There is a current bug in
Wayland that is causing crashes when you close clients.
Signed-off-by: Chris Michael <cp.michael@samsung.com>