[PATCH weston 1/9] shell: Install protocol for surface_data objects
Scott Moreau
oreaus at gmail.com
Thu Mar 7 20:47:10 PST 2013
This patch introduces a new surface_data_manager interface that allows the
compositor to send surface data to the shell client, using the accompanying
surface_data object interface. This allows the shell client to receive
information about surfaces to build a window list, for example.
---
protocol/desktop-shell.xml | 42 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/protocol/desktop-shell.xml b/protocol/desktop-shell.xml
index d48c3dd..2fed660 100644
--- a/protocol/desktop-shell.xml
+++ b/protocol/desktop-shell.xml
@@ -82,6 +82,48 @@
</enum>
</interface>
+ <interface name="surface_data" version="1">
+ <description summary="the surface data offer object">
+ The shell can use this interface to receive surface information or make
+ requests for this surface.
+ </description>
+ <request name="destroy" type="destructor">
+ <description summary="destroy surface request">
+ The shell must send this request in response to a gone event so the
+ compositor can destroy the object properly.
+ </description>
+ </request>
+ <event name="output_mask">
+ <description summary="send the surface object output_mask to the shell"/>
+ <arg name="output_mask" type="uint"/>
+ </event>
+ <event name="title">
+ <description summary="send the surface object title to the shell"/>
+ <arg name="title" type="string"/>
+ </event>
+ <event name="gone">
+ <description summary="destroy surface notification">
+ The compositor should send this event to notify the shell that a
+ surface has been destroyed. The client must respond with a destroy
+ request.
+ </description>
+ </event>
+ </interface>
+
+ <interface name="surface_data_manager" version="1">
+ <description summary="send surface object to shell">
+ The compositor can offer surface data to a shell. The client can use
+ this interface as a way to receive special surface_data objects.
+ </description>
+ <event name="surface_object">
+ <description summary="surface object">
+ Surface object sent to a shell. This object is intended to allow the
+ shell to initiate a surface_data object interface.
+ </description>
+ <arg name="id" type="new_id" interface="surface_data"/>
+ </event>
+ </interface>
+
<interface name="screensaver" version="1">
<description summary="interface for implementing screensavers">
Only one client can bind this interface at a time.
--
1.7.10.4
More information about the wayland-devel
mailing list