concerns over wayland and need for wayland app display to X Server
spitzak at gmail.com
Mon Feb 20 11:56:52 PST 2012
On 02/19/2012 03:08 PM, Daniel Stone wrote:
> There's already a Wayland session that runs on X, and as you asked
> for, an X server that runs rootless on Wayland, with full and proper
> integration with a Wayland session. Hope this satisfies you.
The "Wayland session that runs on X" is, I believe, more like "a Wayland
desktop inside an X window" and is *not* what he is asking for.
I think he wants to see each window created by the Wayland program
making a different X window that is completely filled by the contents of
the Wayland window.
So far it appears that toolkits like Qt are being written to internally
switch between Wayland and Xlib, to provide this for him. This is
probably the best solution.
There could be a Wayland compositor that actually "composites" the
windows into X windows, which I think matches most closely what is being
asked for. There are serious problems however. In particular the window
borders are drawn by the client. Stripping them off and providing enough
information for the X server to draw new ones would require all the crap
that is in X now for clients to communicate information to the server,
and would break any new and clever uses of the window borders.
Displaying them as borderless windows would also work but may make some
X desktops act strange. Double window borders may be somewhat
acceptable, or an api from the compositor saying "no window border is
needed" similar to what is needed for fullscreen. Stacking issues due to
X window managers raising on click and the inability to outwit this
without sending a limited set of rules through "transient for" hints is
also going to be a big pain, but it might not break clients that consist
of only one window and popup menus.
In general I think it would be really ugly if all the mistakes of X have
to be replicated in the Wayland api just to communicate this
information. So I think the proper answer is "no, it is not going to
support this perfectly, but there will be compositors that will try."
Please do not add crap to the Wayland API just to match X!
More information about the wayland-devel