wayland-protocols: Changes to 'upstream-unstable'
Makefile.am | 1
configure.ac | 2
unstable/xdg-foreign/xdg-foreign-unstable-v2.xml | 182 +++++++++++++++++++++++
wayland-protocols.pc.in | 2
4 files changed, 185 insertions(+), 2 deletions(-)
New commits:
commit fc3305c36298c48e708bfb1972f4b5e3331a88a8
Author: Jonas Ådahl <jadahl@gmail.com>
Date: Wed Oct 11 16:20:05 2017 +0800
configure.ac: Bump version to 1.11
Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
diff --git a/configure.ac b/configure.ac
index 4301bb2..39d54a9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,7 +1,7 @@
AC_PREREQ([2.64])
m4_define([wayland_protocols_major_version], [1])
-m4_define([wayland_protocols_minor_version], [10])
+m4_define([wayland_protocols_minor_version], [11])
m4_define([wayland_protocols_version],
[wayland_protocols_major_version.wayland_protocols_minor_version])
commit 70d85926c60996afe98ee244acad05d478618ceb
Author: Marco Martin <notmart@gmail.com>
Date: Mon Sep 18 14:09:05 2017 +0200
xdg-foreign-v2: Rename export and import calls
As export is a reserved keyword in C++, in order for the output
generated by wayland_scanner to compile correctly rename export to
export_toplevel and import to import_toplevel this needs a new protocol
version as is an incompatible change
[jadahl: Fix various documentation issues]
Signed-off-by: Marco Martin <notmart@gmail.com>
Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
diff --git a/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml b/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml
index 062b090..bf46fa8 100644
--- a/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml
+++ b/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<protocol name="xdg_foreign_unstable_v1">
+<protocol name="xdg_foreign_unstable_v2">
<copyright>
Copyright © 2015-2016 Red Hat Inc.
@@ -32,12 +32,12 @@
some of its own surface above the other clients surface.
In order for a client A to get a reference of a surface of client B, client
- B must first export its surface using xdg_exporter.export. Upon doing this,
- client B will receive a handle (a unique string) that it may share with
- client A in some way (for example D-Bus). After client A has received the
- handle from client B, it may use xdg_importer.import to create a reference
- to the surface client B just exported. See the corresponding requests for
- details.
+ B must first export its surface using xdg_exporter.export_toplevel. Upon
+ doing this, client B will receive a handle (a unique string) that it may
+ share with client A in some way (for example D-Bus). After client A has
+ received the handle from client B, it may use xdg_importer.import_toplevel
+ to create a reference to the surface client B just exported. See the
+ corresponding requests for details.
A possible use case for this is out-of-process dialogs. For example when a
sandboxed client without file system access needs the user to select a file
@@ -56,7 +56,7 @@
reset.
</description>
- <interface name="zxdg_exporter_v1" version="1">
+ <interface name="zxdg_exporter_v2" version="1">
<description summary="interface for exporting surfaces">
A global interface used for exporting surfaces that can later be imported
using xdg_importer.
@@ -69,25 +69,25 @@
</description>
</request>
- <request name="export">
- <description summary="export a surface">
- The export request exports the passed surface so that it can later be
+ <request name="export_toplevel">
+ <description summary="export a toplevel surface">
+ The export_toplevel request exports the passed surface so that it can later be
imported via xdg_importer. When called, a new xdg_exported object will
be created and xdg_exported.handle will be sent immediately. See the
corresponding interface and event for details.
A surface may be exported multiple times, and each exported handle may
- be used to create a xdg_imported multiple times. Only xdg_surface
- surfaces may be exported.
+ be used to create a xdg_imported multiple times. Only xdg_toplevel
+ equivalent surfaces may be exported.
</description>
- <arg name="id" type="new_id" interface="zxdg_exported_v1"
+ <arg name="id" type="new_id" interface="zxdg_exported_v2"
summary="the new xdg_exported object"/>
<arg name="surface" type="object" interface="wl_surface"
summary="the surface to export"/>
</request>
</interface>
- <interface name="zxdg_importer_v1" version="1">
+ <interface name="zxdg_importer_v2" version="1">
<description summary="interface for importing surfaces">
A global interface used for importing surfaces exported by xdg_exporter.
With this interface, a client can create a reference to a surface of
@@ -101,22 +101,22 @@
</description>
</request>
- <request name="import">
- <description summary="import a surface">
- The import request imports a surface from any client given a handle
- retrieved by exporting said surface using xdg_exporter.export. When
- called, a new xdg_imported object will be created. This new object
+ <request name="import_toplevel">
+ <description summary="import a toplevel surface">
+ The import_toplevel request imports a surface from any client given a handle
+ retrieved by exporting said surface using xdg_exporter.export_toplevel.
+ When called, a new xdg_imported object will be created. This new object
represents the imported surface, and the importing client can
manipulate its relationship using it. See xdg_imported for details.
</description>
- <arg name="id" type="new_id" interface="zxdg_imported_v1"
+ <arg name="id" type="new_id" interface="zxdg_imported_v2"
summary="the new xdg_imported object"/>
<arg name="handle" type="string"
summary="the exported surface handle"/>
</request>
</interface>
- <interface name="zxdg_exported_v1" version="1">
+ <interface name="zxdg_exported_v2" version="1">
<description summary="an exported surface handle">
A xdg_exported object represents an exported reference to a surface. The
exported surface may be referenced as long as the xdg_exported object not
@@ -136,14 +136,14 @@
<description summary="the exported surface handle">
The handle event contains the unique handle of this exported surface
reference. It may be shared with any client, which then can use it to
- import the surface by calling xdg_importer.import. A handle may be
- used to import the surface multiple times.
+ import the surface by calling xdg_importer.import_toplevel. A handle
+ may be used to import the surface multiple times.
</description>
<arg name="handle" type="string" summary="the exported surface handle"/>
</event>
</interface>
- <interface name="zxdg_imported_v1" version="1">
+ <interface name="zxdg_imported_v2" version="1">
<description summary="an imported surface handle">
A xdg_imported object represents an imported reference to surface exported
by some client. A client can use this interface to manipulate
@@ -161,9 +161,9 @@
<request name="set_parent_of">
<description summary="set as the parent of some surface">
Set the imported surface as the parent of some surface of the client.
- The passed surface must be a toplevel xdg_surface. Calling this function
- sets up a surface to surface relation with the same stacking and positioning
- semantics as xdg_surface.set_parent.
+ The passed surface must be a xdg_toplevel equivalent. Calling this
+ function sets up a surface to surface relation with the same stacking
+ and positioning semantics as xdg_toplevel.set_parent.
</description>
<arg name="surface" type="object" interface="wl_surface"
summary="the child surface"/>
commit 72699573cccc7bafb7c790c7a02fde05ef181649
Author: Marco Martin <notmart@gmail.com>
Date: Mon Sep 18 14:09:04 2017 +0200
Add a new version of the xdg-foreign protocol
Some methods will be renamed, so we need a new, not retrocompatible
protocol.
Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
diff --git a/Makefile.am b/Makefile.am
index 5b5ae96..0296d5d 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -11,6 +11,7 @@ unstable_protocols = \
unstable/tablet/tablet-unstable-v1.xml \
unstable/tablet/tablet-unstable-v2.xml \
unstable/xdg-foreign/xdg-foreign-unstable-v1.xml \
+ unstable/xdg-foreign/xdg-foreign-unstable-v2.xml \
unstable/idle-inhibit/idle-inhibit-unstable-v1.xml \
unstable/xwayland-keyboard-grab/xwayland-keyboard-grab-unstable-v1.xml \
unstable/keyboard-shortcuts-inhibit/keyboard-shortcuts-inhibit-unstable-v1.xml \
diff --git a/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml b/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml
new file mode 100644
index 0000000..062b090
--- /dev/null
+++ b/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<protocol name="xdg_foreign_unstable_v1">
+
+ <copyright>
+ Copyright © 2015-2016 Red Hat Inc.
+
+ Permission is hereby granted, free of charge, to any person obtaining a
+ copy of this software and associated documentation files (the "Software"),
+ to deal in the Software without restriction, including without limitation
+ the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ and/or sell copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice (including the next
+ paragraph) shall be included in all copies or substantial portions of the
+ Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+ </copyright>
+
+ <description summary="Protocol for exporting xdg surface handles">
+ This protocol specifies a way for making it possible to reference a surface
+ of a different client. With such a reference, a client can, by using the
+ interfaces provided by this protocol, manipulate the relationship between
+ its own surfaces and the surface of some other client. For example, stack
+ some of its own surface above the other clients surface.
+
+ In order for a client A to get a reference of a surface of client B, client
+ B must first export its surface using xdg_exporter.export. Upon doing this,
+ client B will receive a handle (a unique string) that it may share with
+ client A in some way (for example D-Bus). After client A has received the
+ handle from client B, it may use xdg_importer.import to create a reference
+ to the surface client B just exported. See the corresponding requests for
+ details.
+
+ A possible use case for this is out-of-process dialogs. For example when a
+ sandboxed client without file system access needs the user to select a file
+ on the file system, given sandbox environment support, it can export its
+ surface, passing the exported surface handle to an unsandboxed process that
+ can show a file browser dialog and stack it above the sandboxed client's
+ surface.
+
+ Warning! The protocol described in this file is experimental and backward
+ incompatible changes may be made. Backward compatible changes may be added
+ together with the corresponding interface version bump. Backward
+ incompatible changes are done by bumping the version number in the protocol
+ and interface names and resetting the interface version. Once the protocol
+ is to be declared stable, the 'z' prefix and the version number in the
+ protocol and interface names are removed and the interface version number is
+ reset.
+ </description>
+
+ <interface name="zxdg_exporter_v1" version="1">
+ <description summary="interface for exporting surfaces">
+ A global interface used for exporting surfaces that can later be imported
+ using xdg_importer.
+ </description>
+
+ <request name="destroy" type="destructor">
+ <description summary="destroy the xdg_exporter object">
+ Notify the compositor that the xdg_exporter object will no longer be
+ used.
+ </description>
+ </request>
+
+ <request name="export">
+ <description summary="export a surface">
+ The export request exports the passed surface so that it can later be
+ imported via xdg_importer. When called, a new xdg_exported object will
+ be created and xdg_exported.handle will be sent immediately. See the
+ corresponding interface and event for details.
+
+ A surface may be exported multiple times, and each exported handle may
+ be used to create a xdg_imported multiple times. Only xdg_surface
+ surfaces may be exported.
+ </description>
+ <arg name="id" type="new_id" interface="zxdg_exported_v1"
+ summary="the new xdg_exported object"/>
+ <arg name="surface" type="object" interface="wl_surface"
+ summary="the surface to export"/>
+ </request>
+ </interface>
+
+ <interface name="zxdg_importer_v1" version="1">
+ <description summary="interface for importing surfaces">
+ A global interface used for importing surfaces exported by xdg_exporter.
+ With this interface, a client can create a reference to a surface of
+ another client.
+ </description>
+
+ <request name="destroy" type="destructor">
+ <description summary="destroy the xdg_importer object">
+ Notify the compositor that the xdg_importer object will no longer be
+ used.
+ </description>
+ </request>
+
+ <request name="import">
+ <description summary="import a surface">
+ The import request imports a surface from any client given a handle
+ retrieved by exporting said surface using xdg_exporter.export. When
+ called, a new xdg_imported object will be created. This new object
+ represents the imported surface, and the importing client can
+ manipulate its relationship using it. See xdg_imported for details.
+ </description>
+ <arg name="id" type="new_id" interface="zxdg_imported_v1"
+ summary="the new xdg_imported object"/>
+ <arg name="handle" type="string"
+ summary="the exported surface handle"/>
+ </request>
+ </interface>
+
+ <interface name="zxdg_exported_v1" version="1">
+ <description summary="an exported surface handle">
+ A xdg_exported object represents an exported reference to a surface. The
+ exported surface may be referenced as long as the xdg_exported object not
+ destroyed. Destroying the xdg_exported invalidates any relationship the
+ importer may have established using xdg_imported.
+ </description>
+
+ <request name="destroy" type="destructor">
+ <description summary="unexport the exported surface">
+ Revoke the previously exported surface. This invalidates any
+ relationship the importer may have set up using the xdg_imported created
+ given the handle sent via xdg_exported.handle.
+ </description>
+ </request>
+
+ <event name="handle">
+ <description summary="the exported surface handle">
+ The handle event contains the unique handle of this exported surface
+ reference. It may be shared with any client, which then can use it to
+ import the surface by calling xdg_importer.import. A handle may be
+ used to import the surface multiple times.
+ </description>
+ <arg name="handle" type="string" summary="the exported surface handle"/>
+ </event>
+ </interface>
+
+ <interface name="zxdg_imported_v1" version="1">
+ <description summary="an imported surface handle">
+ A xdg_imported object represents an imported reference to surface exported
+ by some client. A client can use this interface to manipulate
+ relationships between its own surfaces and the imported surface.
+ </description>
+
+ <request name="destroy" type="destructor">
+ <description summary="destroy the xdg_imported object">
+ Notify the compositor that it will no longer use the xdg_imported
+ object. Any relationship that may have been set up will at this point
+ be invalidated.
+ </description>
+ </request>
+
+ <request name="set_parent_of">
+ <description summary="set as the parent of some surface">
+ Set the imported surface as the parent of some surface of the client.
+ The passed surface must be a toplevel xdg_surface. Calling this function
+ sets up a surface to surface relation with the same stacking and positioning
+ semantics as xdg_surface.set_parent.
+ </description>
+ <arg name="surface" type="object" interface="wl_surface"
+ summary="the child surface"/>
+ </request>
+
+ <event name="destroyed">
+ <description summary="the imported surface handle has been destroyed">
+ The imported surface handle has been destroyed and any relationship set
+ up has been invalidated. This may happen for various reasons, for
+ example if the exported surface or the exported surface handle has been
+ destroyed, if the handle used for importing was invalid.
+ </description>
+ </event>
+ </interface>
+
+</protocol>
commit 875130ee3cbcf62266901ef4b91b9a0fb6adad43
Author: Tomek Bury <tomek.bury@broadcom.com>
Date: Fri Aug 4 16:16:38 2017 +0100
Use sysroot prefix for pkgdatadir variable
The pc_sysroot is automatically added to cflags and libs but not
to 'pkg-config --variable'
Reviewed-by: Daniel Stone <daniels@collabora.com>
diff --git a/wayland-protocols.pc.in b/wayland-protocols.pc.in
index a26744c..379be06 100644
--- a/wayland-protocols.pc.in
+++ b/wayland-protocols.pc.in
@@ -1,6 +1,6 @@
prefix=@prefix@
datarootdir=@datarootdir@
-pkgdatadir=@datadir@/@PACKAGE@
+pkgdatadir=${pc_sysrootdir}@datadir@/@PACKAGE@
Name: Wayland Protocols
Description: Wayland protocol files
Reply to: