On Thu, Jul 13, 2017 at 1:49 PM, Marco Martin <notm...@gmail.com> wrote: > On Thu, Jul 13, 2017 at 11:05 AM, David Edmundson > <da...@davidedmundson.co.uk> wrote: >> That works fine for XDG, but wl-shellsurface doesn't like that and remains >> until you delete the wl_surface. wl_shell_surface_destroy literally sends >> nothing in wayland_debug. >> >> I think that's why they end up deleting both. It's not a simple thing to >> abstract when everything behaves so differently. > > tried the patch and i can confirm the behavior, it goes all down to > proxy_destroy, so client side is almost like everyting was destroyed > correctly, but at the next > wl_shell@27.get_shell_surface, the surface is already created and goes > to protocol error: > wl_surface@43: error 0: ShellSurface already created
by the way, this seems the gtk implementation https://github.com/jdapena/gtk/blob/master/gdk/wayland/gdkwindow-wayland.c which seems to do the same thing, destroying the wl_surface at every window hide https://github.com/GNOME/gtk/blob/master/gdk/wayland/gdkwindow-wayland.c -- Marco Martin