Clarify clients behavior on wl_keyboard.leave
authorKirill Chibisov <contact@kchibisov.com>
Sun, 24 May 2020 11:12:44 +0000 (14:12 +0300)
committerDaniel Stone <daniels@collabora.com>
Fri, 12 Jun 2020 21:15:11 +0000 (21:15 +0000)
Clients must assume that every key, including modifiers, are lifted
after getting wl_keyboard.leave event, not doing so could lead to key repeat
keep going after the user changes focus, or stuck modifiers, when the user
interacts with client without keyboard focus.

Signed-off-by: Kirill Chibisov <contact@kchibisov.com>
protocol/wayland.xml

index 8e4a75c..9784680 100644 (file)
 
        The leave notification is sent before the enter notification
        for the new focus.
+
+       After this event client must assume that all keys, including modifiers,
+       are lifted and also it must stop key repeating if there's some going on.
       </description>
       <arg name="serial" type="uint" summary="serial number of the leave event"/>
       <arg name="surface" type="object" interface="wl_surface" summary="surface that lost keyboard focus"/>