On Tue, 29 Mar 2016 08:25:19 +0300 Giulio Camuffo <giuliocamuffo gmail com> wrote:
2016-03-29 6:23 GMT+03:00 Drew DeVault <sir cmpwn com>:On 2016-03-29 2:15 AM, Martin Peres wrote:I was proposing for applications to just bind the interface and see if it works or not. But Giulio's proposal makes sense because it could be used to both grant and revoke rights on the fly.I think both solutions have similar merit and I don't feel strongly about either one.If the client just binds the interface the compositor needs to immediately create the resource and send the protocol error, if the client is not authorized. It doesn't have the time to ask the user for input on the matter, while my proposal gives the compositor that.
More precisely, you cannot gracefully fail to use an interface exposed via wl_registry. It either works, or the client gets disconnected. Protocol error always means disconnection, and wl_registry has no other choice to communicate a "no, you can't use this". Checking "whether an interface works or not" is also not trivial. It would likely lead to adding a "yes, this works" event to all such interfaces, since anything less explicit is harder than necessary. But why do that separately in every interface rather than in a common interface? Btw. I did say in the past that I didn't quite understand or like Giulio's proposal, but I have come around since. For the above reasons, it does make sense on a high level. Thanks, pq
Attachment:
pgpKn_ZA0SS5T.pgp
Description: OpenPGP digital signature