diff options
-rw-r--r-- | protocol/agl-shell.xml | 48 |
1 files changed, 45 insertions, 3 deletions
diff --git a/protocol/agl-shell.xml b/protocol/agl-shell.xml index 11a65a1..f540eff 100644 --- a/protocol/agl-shell.xml +++ b/protocol/agl-shell.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <protocol name="agl_shell"> <copyright> - Copyright © 2019 Collabora, Ltd. + Copyright © 2019, 2022 Collabora, Ltd. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), @@ -22,10 +22,35 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </copyright> - <interface name="agl_shell" version="1"> - <description summary="user interface for weston-ivi"> + <interface name="agl_shell" version="2"> + <description summary="user interface for Automotive Grade Linux platform"> + Starting with version 2 of the protocol, the client is required to wait + for the 'bound_ok' or 'bound_fail' events in order to proceed further. + + In case the client gets a 'bound_fail' event then it should consider that + there's another client already bound to the agl_shell protocol. + A client that receives a 'bound_ok' event should consider that there's + no other client already bound to the interface and can proceed further. + + If the client uses an older version of the protocol it will receive + automatically an error and the compositor will terminate the connection, + if there's another client already bound the interface. + + If the client receives the 'bound_fail' event and attempts to use the + interface further it will receive an error and the compositor will + terminate the connection. After the 'bound_fail' event was received the + client should call the destructor, which has been added with version 2 + of the protocol. The client is free to try at a later point in time to + see if it will receive the 'bound_ok' event, but there's no explicit way + of finding out when that event will delivered. It is assumed that it can + infer that information through other means/other channels. </description> + <request name="destroy" type="destructor" since="2"> + <description summary="destroys the factory object"> + </description> + </request> + <enum name="error"> <entry name="invalid_argument" value="0"/> <entry name="background_exists" value="1"/> @@ -113,5 +138,22 @@ <arg name="app_id" type="string"/> <arg name="output" type="object" interface="wl_output"/> </request> + + <event name="bound_ok" since="2"> + <description> + Informs the client that it was able to bind the agl_shell + interface succesfully. Clients are required to wait for this + event before continuing further. + </description> + </event> + + <event name="bound_fail" since="2"> + <description> + Informs the client that binding to the agl_shell interface was + unsuccesfull. Clients are required to wait for this event for + continuing further. + </description> + </event> + </interface> </protocol> |