Forbid using compositor as ICC file factory and split color space information events
In the past we talked about clients maybe abusing a compositor by creating a color space object from custom parameters or well-known names and asking the compositor to give an ICC profile file back. Forbid this, as there is no reason to let a compositor be abused like that. There is much more to ICC profile manufacturing than that, the compositor only generates profiles for its own internal use which may not be suitable for clients' intents. Clients should just use a CMM of their own for this.
The color space object interface is modified to better take into account possibilities envisioned in wayland/wayland-protocols!14 (comment 616851), that is, extensions creating color space objects for new purposes. There is new wording to cater for extensions creating objects and adding more information events, and the new done
event is part of that.
The existing information is split into two events: ICC profile and well-known names. This way, if a compositor does not have both, it can choose to not send dummy data. Sending the ICC profile is made optional but highly recommended by suggesting that generic clients can rely on it. The well-known names event clarifies how clients may use it.
I also spelled out more clearly that a color space object will never change its meaning.
Fixes: #1 (closed)