[PATCH wayland-protcols v3] unstable: add xdg-toplevel-decoration protocol

Eike Hein hein at kde.org
Sun Mar 18 19:59:15 UTC 2018


>> If server and client do not negotiate the use of a server-side
>> decoration using this protocol, clients continue to self-decorate as
>> they see fit."
>
> The wording here is weird, and I want to avoid the word decorate. What
> the client does is not necessarily decorate. The reason why clients
> would need to decorate themselves at all is to give the user some visual
> cues for their true purpose: window management. We should just say this.
> I prefer my previous wording:
>
>> If the client chooses not to use server-side decorations, it is
>> responsible for its own window management operations.
Up-front: I could live with that one if need be.

... but I think it's sort of inviting some trouble again. "Window
management operations" gets us - albeit in a much less specific way,
which is a big improvement - back into the territory of defining
"decoration". The use of "responsible" also creates an expectation that
a client will cater to window management in some way, which some clients
have shown a preference for not doing. I think my version captures
reality in a better way without holding anyone to new requirements that
didn't exist before today.

The spirit of my para was two communicate two things:

* This is an optional additional negotiation that takes place between
server and client that allows them to agree on the client being
server-decorated.

That means servers who don't care are unaffected and clients which don't
care are unaffected, which is what we want because we can't universally
agree on any specific case, but we can agree that Wayland should let us
all build the systems we envision. What it does allow is for components
that do agree to work together, which is a big step in the right direction.

* If this negotiation does not take place or does not have this result
(server does not implement at all, preferred mode is client-side, client
doesn't request server-side), clients are left to do whatever.

The wording of my second clause also implies - but does not enforce,
since it has no mechanism to do this anyway - that if client and server
agree on server-side decoration, a client should probably not decorate,
which I think is good to have in there in spirit.



Cheers,
Eike


More information about the wayland-devel mailing list