mutter/data/dbus-interfaces/org.gnome.Mutter.ServiceChannel.xml
Jonas Ådahl 74fcdb9a62 Introduce the 'service channel' D-Bus service
The service channel D-Bus interface aims to be a "back door" for
services that needs special casing in Mutter, e.g. have custom private
protocols only meant to be used by that particular service.

There are currently no special casing implemented; only the basic
service channel infrastructure is added. There is a single method on the
interface, that is meant to eventually be used by
xdg-desktop-portal-gnome to open a Wayland connection with a private
protocol needed for the portal backend's rather special window
management needs.

The service channel Wayland client works by allowing one instance of
each "type", where each time needs to be defined to work in parallel. If
a new service client connects, the old one will be disconnected.

MetaWaylandClient's are used to manage the service clients, and are
assigned the service client type.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2810>
2023-02-13 15:34:24 +00:00

21 lines
544 B
XML

<!DOCTYPE node PUBLIC
'-//freedesktop//DTD D-BUS Object Introspection 1.0//EN'
'http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd'>
<node>
<interface name="org.gnome.Mutter.ServiceChannel">
<!--
ServiceClientTypes:
PORTAL_BACKEND: 1
-->
<method name="OpenWaylandServiceConnection">
<arg name="service_client_type" type="u" direction="in" />
<annotation name="org.gtk.GDBus.C.UnixFD" value="true"/>
<arg name="fd" type="h" direction="out" />
</method>
</interface>
</node>