[PATCH] protocol: Add ping event and corresponding pong request

Scott Moreau oreaus at gmail.com
Mon Apr 16 10:25:39 PDT 2012

 TODO                 |    4 ----
 protocol/wayland.xml |   16 ++++++++++++++++
 2 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/TODO b/TODO
index a7bdfd2..6fc8c87 100644
--- a/TODO
+++ b/TODO
@@ -103,10 +103,6 @@ EWMH
    just another wl_surface? Do we need this if we have the .desktop
    file?  How to set multiple sizes?
- - ping event, essentially the opposite of the display.sync request.
-   Compositor can ping clients to see if they're alive (typically when
-   sending input events to a client surface)
  - move to workspace, keep on top, on all workspaces, minimize etc
    requests for implementing client side window menu? or just make a
    "show window menu" request to let the compositor display and manage
diff --git a/protocol/wayland.xml b/protocol/wayland.xml
index bd3c868..f50ca3f 100644
--- a/protocol/wayland.xml
+++ b/protocol/wayland.xml
@@ -403,6 +403,22 @@
       called before destroying the wl_surface object.
+    <event name="ping">
+      <description summary="ping client">
+	Ping a client to check if it is receiving events and sending
+	requests. A client is expected to reply with a pong request.
+      </description>
+      <arg name="serial" type="uint"/>
+    </event>
+    <request name="pong">
+      <description summary="respond to a ping event">
+	A client must respond to a ping event with a pong request or
+	the client may be deemed unresponsive.
+      </description>
+      <arg name="serial" type="uint"/>
+    </request>
     <request name="move">
       <arg name="input_device" type="object" interface="wl_input_device"/>
       <arg name="serial" type="uint"/>

More information about the wayland-devel mailing list