<?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>
