forked from AuroraMiddleware/gtk
04cf5044da
This adds a "release" destructor for the gtk_surface1 interface which signals to the server that a surface has been destroyed on the client side, which the current "destroy" does not do. Ideally the protocol would have specified a destroy request marked as destructor to handle this automatically, however this is no longer possible due to the destroy method being implicitly generated in the absence of an explicit request in the protocol. Adding a destroy request marked as destructor now would generate a new destroy method that unconditionally would send the request to the server, which would break clients running on servers not supporting that request.
91 lines
2.7 KiB
XML
91 lines
2.7 KiB
XML
<protocol name="gtk">
|
|
|
|
<interface name="gtk_shell1" version="4">
|
|
<description summary="gtk specific extensions">
|
|
gtk_shell is a protocol extension providing additional features for
|
|
clients implementing it.
|
|
</description>
|
|
|
|
<enum name="capability">
|
|
<entry name="global_app_menu" value="1"/>
|
|
<entry name="global_menu_bar" value="2"/>
|
|
<entry name="desktop_icons" value="3"/>
|
|
</enum>
|
|
|
|
<event name="capabilities">
|
|
<arg name="capabilities" type="uint"/>
|
|
</event>
|
|
|
|
<request name="get_gtk_surface">
|
|
<arg name="gtk_surface" type="new_id" interface="gtk_surface1"/>
|
|
<arg name="surface" type="object" interface="wl_surface"/>
|
|
</request>
|
|
|
|
<request name="set_startup_id">
|
|
<arg name="startup_id" type="string" allow-null="true"/>
|
|
</request>
|
|
|
|
<request name="system_bell">
|
|
<arg name="surface" type="object" interface="gtk_surface1" allow-null="true"/>
|
|
</request>
|
|
|
|
<!-- Version 3 additions -->
|
|
<request name="notify_launch" since="3">
|
|
<arg name="startup_id" type="string"/>
|
|
</request>
|
|
</interface>
|
|
|
|
<interface name="gtk_surface1" version="4">
|
|
<request name="set_dbus_properties">
|
|
<arg name="application_id" type="string" allow-null="true"/>
|
|
<arg name="app_menu_path" type="string" allow-null="true"/>
|
|
<arg name="menubar_path" type="string" allow-null="true"/>
|
|
<arg name="window_object_path" type="string" allow-null="true"/>
|
|
<arg name="application_object_path" type="string" allow-null="true"/>
|
|
<arg name="unique_bus_name" type="string" allow-null="true"/>
|
|
</request>
|
|
|
|
<request name="set_modal"/>
|
|
<request name="unset_modal"/>
|
|
|
|
<request name="present">
|
|
<arg name="time" type="uint"/>
|
|
</request>
|
|
|
|
<!-- Version 2 additions -->
|
|
|
|
<enum name="state">
|
|
<entry name="tiled" value="1"/>
|
|
|
|
<entry name="tiled_top" value="2" since="2" />
|
|
<entry name="tiled_right" value="3" since="2" />
|
|
<entry name="tiled_bottom" value="4" since="2" />
|
|
<entry name="tiled_left" value="5" since="2" />
|
|
</enum>
|
|
|
|
<enum name="edge_constraint" since="2">
|
|
<entry name="resizable_top" value="1"/>
|
|
<entry name="resizable_right" value="2"/>
|
|
<entry name="resizable_bottom" value="3"/>
|
|
<entry name="resizable_left" value="4"/>
|
|
</enum>
|
|
|
|
<event name="configure">
|
|
<arg name="states" type="array"/>
|
|
</event>
|
|
|
|
<event name="configure_edges" since="2">
|
|
<arg name="constraints" type="array"/>
|
|
</event>
|
|
|
|
<!-- Version 3 additions -->
|
|
<request name="request_focus" since="3">
|
|
<arg name="startup_id" type="string" allow-null="true"/>
|
|
</request>
|
|
|
|
<!-- Version 4 additions -->
|
|
<request name="release" type="destructor" since="4"/>
|
|
</interface>
|
|
|
|
</protocol>
|