ext-tray-v1: Add new protocol
This protocol allows clients to display items in the compositor's tray areas. This serves multiple purposes:
- It removes the need for compositors to implement the status notifier protocols.
- It allows clients to display rich surfaces in tray popups. For example, a volume control application can embed volume controls directly in the popup.
Some compositors outsource their tray area to privileged clients, for example, sway/swaybar. Such compositors can still use this protocol by additionally supporting a separate, privileged, protocol that allows them to embed such items into the privileged client (think zwp_text_input/zwp_input_method). That is out of scope for this protocol.
FAQ
-
Q: Why would the compositor advertise more than one tray?
A: See the two comments starting at !355 (comment 2617998)
-
Q: Is this an alternative to the SNI protocols? How does this interact with the SNI protocols?
Changelog
-
2024-10-20
- Clarify language around configuration sequences.
- Add ext_tray_item_v1.preferred_anchor event.
- Add ext_tray_item_v1.preferred_gravity event.
Requirements for merging
-
Review (1 required) -
Implementations (2 required) - Jay: https://github.com/mahkoh/jay/pull/296
- wl-tray-bridge: https://github.com/mahkoh/wl-tray-bridge
-
ACKs from members (2 required)