[PATCH wayland-protocols] xdg-output: deprecate the xdg_output.done event

Pekka Paalanen ppaalanen at gmail.com
Mon Jun 24 09:51:23 UTC 2019


On Sun, 28 Apr 2019 21:52:34 +1200
Scott Anderson <scott.anderson at collabora.com> wrote:

> >>> This commit makes it so a wl_output.done event is guaranteed to be sent with a
> >>> xdg_output.done event.  
> >>
> >> Humm, I am not sure I like changing xdg-output to rely on another protocol
> >> event, it's looks like a weird mixup to me...  
> > 
> > As noted below, this is idiomatic in the Wayland protocol. The
> > wl_surface.commit request applies xdg_surface's state.  
> 
> Just to expand on this with my two-cents, many of the Wayland protocol 
> objects are conceptually extensions of other protocol objects. 
> xdg_surface extends wl_surface, xdg_toplevel extends xdg_surface, and if 
> we want to go cross-extension-protocol, xdg_toplevel_decoration extends 
> xdg_toplevel.
> 
> While this is 4 protocol objects, we're conceptually just dealing with a 
> single surface's state. The protocol objects are simply adding new 
> interfaces to that surface and are meaningless on their own. We want to 
> keep that surface's state consistent, so they need to share the same 
> synchronisation to ensure atomicity, which includes wl_output.commit and 

*wl_surface.commit

> xdg_surface.configure.
> 
> So there is certainly precedence for relying on the events and requests 
> of other protocols.
> 
> Now applying that to xdg_output, it's simply adding interfaces to an 
> wl_output object, and isn't meaningful on its own. It only makes sense 
> to synchronise it properly with wl_output.

Hi,

FWIW, I fully agree with Scott here.

xdg_output may provide a super-set of properties, but it cannot exist
without the base object wl_output, and the interpretation of xdg_output
being an additional interface to what the wl_output originally
represents is appropriate.

Wayland core protocol (wl_output) cannot ever depend on an extension
(xdg_output), so it does not make sense to say that wl_output property
changes would emit an xdg_output.done event.


Thanks,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20190624/deb5daf7/attachment.sig>


More information about the wayland-devel mailing list