summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiago Vignatti <tiago.vignatti@intel.com>2012-10-03 15:44:41 +0300
committerTiago Vignatti <tiago.vignatti@intel.com>2012-10-03 15:44:41 +0300
commit43d82dc1f1d4e6c21fdd44e605899081cf9a4073 (patch)
treebf5091890b43c7f5f15ec6df66445c269523199f
parent484853435fb4a313e265f7cacac249ab5c4d11d6 (diff)
protocol: Move xwayland surfaces to new subsurface protocolxwm-client-OLD
WIP still. Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
-rw-r--r--protocol/wayland.xml40
1 files changed, 31 insertions, 9 deletions
diff --git a/protocol/wayland.xml b/protocol/wayland.xml
index 300995a..b049a6d 100644
--- a/protocol/wayland.xml
+++ b/protocol/wayland.xml
@@ -568,21 +568,43 @@
<arg name="output" type="object" interface="wl_output" allow-null="true"/>
</request>
- <enum name="xwayland">
- <description summary="Xwayland surface types">
+ <enum name="subsurface">
+ <description summary="different methods for the subsurface type">
+ "toplevel" is the toplevel window, with random placement on the
+ screen when mapped; fields "parent", "x" and "y" are ignored on this
+ method therefore.
+
+ "child" is a regular surface child of toplevel. Its position is
+ relative "x" and "y" from its "parent". A child is allowed to exist
+ without a parent, therefore "parent" and the coordinates fields
+ are optional; on such case the child is mapped at random position.
+
+ "transient" is a surface child of the "parent". This method differ
+ from the child one because it does not take the focus when the surface
+ is mapped. Its position is relative "x" and "y" from the "parent".
</description>
- <entry name="frame" value="0x0" summary="used by WM only"/>
- <entry name="toplevel" value="0x1" summary="toplevel windows"/>
- <entry name="transient" value="0x2" summary="do not set keyboard focus"/>
+ <entry name="toplevel" value="0"/>
+ <entry name="child" value="1"/>
+ <entry name="transient" value="2"/>
</enum>
- <request name="set_xwayland">
- <arg name="tie" type="int"/>
+ <request name="set_subsurface">
+ <description summary="gives a subsurface feature for the surface">
+ Hints the compositor about a new surface with an specific "method" to
+ be mapped on the screen. The new surface usually has a relationship
+ with another surface, the "parent".
+ </description>
+
+ <arg name="parent" type="object" interface="wl_surface" allow-null="true"/>
<arg name="x" type="int"/>
<arg name="y" type="int"/>
- <arg name="xwayland" type="uint"/>
- </request>
+ <arg name="method" type="uint"/>
+ </request>
+
+ <request name="set_subsurface_parent">
+ <arg name="parent" type="object" interface="wl_surface"/>
+ </request>
<request name="set_title">
<description summary="set surface title">