[RFC PATCH wayland-protocols] Introduce logical output protocol for Xwayland
Olivier Fourdan
ofourdan at redhat.com
Mon Jul 3 08:42:52 UTC 2017
Hi Pekka,
> please consider that it is impossible to have a stabilization period
> for changes to the wl_output interface. What ever you add will be set
> in stone immediately, before a considerable user base has had a chance
> to try it. There will be no going back once it's there, AFAICT no way
> to have it reasonably tested on the field beforehand.
>
> In hindsight I think the position x,y arguments we already have in
> wl_output do not belong there. Only traditional 2D desktops can
> meaningfully set them. They already break down completely in IVI
> systems, where the outputs may be independent in the sense that there
> is no path in the logical coordinate system that you could take to
> travel from one output to another in a way that would make sense. Not
> all systems have a single connected area created from outputs, that
> design is quite specific to desktops.
>
> I would like us to be careful with not adding more desktop assumptions
> to core Wayland interfaces. Whether this proposal would add some, I
> cannot tell yet.
Yes, you're right, the fact that it's needed primarily for Xwayland, which is a bit of a corner case in itself, and to avoid issues due to the way compositors treat Xwayland surfaces differently, definitely raises concerns about the relevance in wl_output...
So, 3 possibilities so far:
1. Add the logical output in wl_output
Looked like a good idea initially, not so much on further consideration.
pro: It's just an additional event to a existing Wayland core protocol
cons: It's quite limited in usefulness outside of its indented use for Xwayland and remains fairly desktop centric
2. Add a specific Xwayland protocol
pro: It's just an event for now, but this could be extended in the future, but not sure with what.
cons: might seem a bit overkill to add a new protocol just for that, unless it's extended in the future. Might need to be deprecated again if/when option #3 is chosen. Not necessarily a huge problem though if the protocol is limited to Xwayland.
3. Deprecate most of the desktop centric parts of wl_output and add a new wp_output protocol for this intended use, as discussed on irc (*)
pro: would clean up wl_output from most concepts "desktop-ish". Even if size might be less "desktop-ish" that position, Xwayland need both anyway.
cons: might take some considerable time to get to an agreement to such a protocol, could be seen as a longer term solution.
I, for one, has no preference, other than we shall need this as I see no other way to make Xwayland work reliably with the various Wayland compositors implementations that already exist.
Cheers,
Olivier
(*) incidentally, the login who captured the irc logs probably got kicked off irc, there's no more logs of past discussions:
https://people.freedesktop.org/~cbrill/dri-log/index.php?channel=wayland&date=2017-06-30
More information about the xorg-devel
mailing list