main
44ceea7 ยท 1 month ago 7 commits
 1<?xml version="1.0" encoding="UTF-8"?>
 2<protocol name="wlr_input_inhibit_unstable_v1">
 3  <interface name="zwlr_input_inhibit_manager_v1" version="1">
 4    <description summary="inhibits input events to other clients">
 5      Clients can use this interface to prevent input events from being sent to
 6      any surfaces but its own, which is useful for example in lock screen
 7      software. It is assumed that access to this interface will be locked down
 8      to whitelisted clients by the compositor.
 9    </description>
10
11    <request name="get_inhibitor">
12      <description summary="inhibit input to other clients">
13        Activates the input inhibitor. As long as the inhibitor is active, the
14        compositor will not send input events to other clients.
15      </description>
16      <arg name="id" type="new_id" interface="zwlr_input_inhibitor_v1"/>
17    </request>
18
19    <enum name="error">
20      <entry name="already_inhibited" value="0" summary="an input inhibitor is already in use on the compositor"/>
21    </enum>
22  </interface>
23
24  <interface name="zwlr_input_inhibitor_v1" version="1">
25    <description summary="inhibits input to other clients">
26      While this resource exists, input to clients other than the owner of the
27      inhibitor resource will not receive input events. The client that owns
28      this resource will receive all input events normally. The compositor will
29      also disable all of its own input processing (such as keyboard shortcuts)
30      while the inhibitor is active.
31
32      The compositor may continue to send input events to selected clients,
33      such as an on-screen keyboard (via the input-method protocol).
34    </description>
35
36    <request name="destroy" type="destructor">
37      <description summary="destroy the input inhibitor object">
38        Destroy the inhibitor and allow other clients to receive input.
39      </description>
40    </request>
41  </interface>
42</protocol>