Hi Wayland and Plasma, I finished the implementation of xdg-shell in KWayland [1] and KWin [2]. Overall it was more straight forward than I would have expected. Especially the changes to KWin were surprisingly minor (with one huge exception).
Now some questions/remarks: * What's a server supposed to do in use_unstable_version? * Why is the ping on the shell and not on the surface? I would have expected to ping the surface. At least that's how I would want to do it from KWin. * Would it be possible to split the states and geometry? I find it weird that I have to send a configure request with a size of 0/0 when informing a surface that it's active. The biggest problem for me is the request set_window_geometry. I think I mentioned it already before on the wayland list. Basically I have no idea how to implement that in KWin. We have only one geometry for a window and that's mapped to the size of the surface/x11 pixmap. This geometry is used all over the place, for positioning, for resizing and for rendering. I cannot add support for this without either breaking code or having to introduce a new internal API. That's lots of work with high potential for breakage :-( From the description it seems to be only relevant for shadows. Could we make shadows an optional part in xdg-shell? That the server can announce that it supports shadows in the surface? Also I'm not quite sure about that, but it looks to me like QtWayland thinks that the set_window_geometry is the geometry of the client-side-decoration, while on GTK it looked to me like being the size of the shadow. Either I did not understand that correctly, or our toolkits are not compatible. At the moment I haven't implemented this request yet in KWayland as I would not be able to use it in KWin anyway. As a note: if it's just about shadow for us in Plasma that's a rather useless request. We already have a Wayland shadow implementation which allows us to have the shadow outside the surface. Cheers Martin [1] https://phabricator.kde.org/D1506 [2] https://phabricator.kde.org/D1507
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel