[PATCH wayland] protocol: Add set_xwayland request for new shell surface type

Tiago Vignatti tiago.vignatti at intel.com
Wed Dec 12 07:26:33 PST 2012


X11 apps use global coordinates most of the time for window placement and the
current approach we have, where transient windows is placed parent relative,
is not sufficient. IOW we can't use the relation of parent <-> child
coordinates because we can't go out there and fix all the clients to place
subwindows relative.

Besides, it has to be a separate wl_shell_surface request specifically for
XWayland because we don't want stock Wayland applications using global
coordinates either.

At the moment only one method for XWayland windows was implemented, which is
the 'inactive' to not set focus when the window is configured. Later we will
want to add a few more methods for dealing with different types of windows.

Signed-off-by: Tiago Vignatti <tiago.vignatti at intel.com>
---
 protocol/wayland.xml |   20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/protocol/wayland.xml b/protocol/wayland.xml
index 0ce68ef..e6df6f3 100644
--- a/protocol/wayland.xml
+++ b/protocol/wayland.xml
@@ -683,6 +683,26 @@
       <arg name="output" type="object" interface="wl_output" allow-null="true"/>
     </request>
 
+    <enum name="xwayland">
+      <description summary="XWayland surface types">
+      </description>
+
+      <entry name="inactive" value="0x1" summary="do not set keyboard focus"/>
+    </enum>
+
+    <request name="set_xwayland">
+      <description summary="make the surface a X11 type of surface">
+	X11 apps use global coordinates most of the time for window placement
+	and this request has to be used only for X Windows. Hence, the
+	coordinates 'x' and 'y' that are global, ie relative to window output
+	dimensions.
+      </description>
+
+      <arg name="x" type="int"/>
+      <arg name="y" type="int"/>
+      <arg name="method" type="uint"/>
+     </request>
+
     <request name="set_title">
       <description summary="set surface title">
       </description>
-- 
1.7.9.5



More information about the wayland-devel mailing list