davidedmundson requested changes to this revision. davidedmundson added a comment. This revision now requires changes to proceed.
In future, it might be faster to put up just the interface xml for review first. ------ In terms of wayland protocols this is non-standard. All clients get a list of available sources. On bind they get all all available sources via addSource. Additional sources are new events. That part's fine. The part with nodeID is unusual. It's convention (though not technically the law) that globals broadcast the same thing to all bound resources. ClientA requests create. All clients get a created event There's no way to tie a created or failed to the original request Client A and B can both connect to the same source, yet either can call close. If we're doing a waland protocol I would have expected: ScreenCastInterface - global event: source_added event: done request: get_stream (returns a ScreenStream object) ScreenStream - resource event: created event: failed event: closed (closed by external sources, clients should now release the stream resource) request: release (closes the stream if applicable, is also of type destructor) INLINE COMMENTS > screencast.xml:16 > + </enum> > + <event name="addSource"> > + <description summary="Notifies about a feed being created"/> Typically events are like signals, so would be called "source_added" Convention is also lower_snake_case > screencast.xml:31 > + <description summary="Notifies about a source becoming > unavailable"/> > + <arg name="sourceId" type="uint" summary="the source > identifier"/> > + </event> this is racey with create. REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D28882 To: apol, #kwin, jgrulich, davidedmundson Cc: davidedmundson, romangg, zzag, kde-frameworks-devel, LeGast00n, cblack, michaelh, ngraham, bruns