Document that a wl_surface can only be assigned either a xdg_popup or
xdg_surface once and that if the client still stries to do that an error
is raised.

Signed-off-by: Jonas Ådahl <[email protected]>
---
 protocol/xdg-shell.xml | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/protocol/xdg-shell.xml b/protocol/xdg-shell.xml
index 09ce019..9dbf193 100644
--- a/protocol/xdg-shell.xml
+++ b/protocol/xdg-shell.xml
@@ -79,7 +79,12 @@
     <request name="get_xdg_surface">
       <description summary="create a shell surface from a surface">
        This creates an xdg_surface for the given surface and gives it the
-       xdg_surface role. See the documentation of xdg_surface for more details.
+       xdg_surface role. A wl_surface can only be given an xdg_surface role
+       once. If get_xdg_surface is called with a wl_surface that was previously
+       an xdg_surface or if it had any other role, an error is raised.
+
+       See the documentation of xdg_surface for more details about what an
+       xdg_surface is and how it is used.
       </description>
       <arg name="id" type="new_id" interface="xdg_surface"/>
       <arg name="surface" type="object" interface="wl_surface"/>
@@ -88,10 +93,15 @@
     <request name="get_xdg_popup">
       <description summary="create a popup for a surface">
        This creates an xdg_popup for the given surface and gives it the
-       xdg_popup role. See the documentation of xdg_popup for more details.
+       xdg_popup role. A wl_surface can only be given an xdg_popup role
+       once. If get_xdg_popup is called with a wl_surface that was previously
+       an xdg_popup or if it had any other role, an error is raised.
 
        This request must be used in response to some sort of user action
        like a button press, key press, or touch down event.
+
+       See the documentation of xdg_popup for more details about what an
+       xdg_popup is and how it is used.
       </description>
       <arg name="id" type="new_id" interface="xdg_popup"/>
       <arg name="surface" type="object" interface="wl_surface"/>
-- 
2.1.4

_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to