diff options
author | Mattias Eriksson <snaggen@mayam.com> | 2018-04-17 09:54:02 +0200 |
---|---|---|
committer | Mattias Eriksson <snaggen@mayam.com> | 2018-05-13 00:30:09 +0200 |
commit | 8fbafbfab5671d56dd469f2205b7906c4a7f7c7c (patch) | |
tree | ab4eab0020d97dc5091b72479c383989ccc84729 /protocols | |
parent | 9d607b72532096e469fdaccf474836c310b629ff (diff) |
Idle handling for dpms/lockscreen et al
Swayidle handles idle events and allows
for dpms and lockscreen handling. It also
handles systemd sleep events, and can
raise a lockscreen on sleep
Fixes #541
Diffstat (limited to 'protocols')
-rw-r--r-- | protocols/idle.xml | 49 | ||||
-rw-r--r-- | protocols/meson.build | 1 |
2 files changed, 50 insertions, 0 deletions
diff --git a/protocols/idle.xml b/protocols/idle.xml new file mode 100644 index 00000000..92d9989c --- /dev/null +++ b/protocols/idle.xml @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="UTF-8"?> +<protocol name="idle"> + <copyright><![CDATA[ + Copyright (C) 2015 Martin Gräßlin + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation, either version 2.1 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + ]]></copyright> + <interface name="org_kde_kwin_idle" version="1"> + <description summary="User idle time manager"> + This interface allows to monitor user idle time on a given seat. The interface + allows to register timers which trigger after no user activity was registered + on the seat for a given interval. It notifies when user activity resumes. + + This is useful for applications wanting to perform actions when the user is not + interacting with the system, e.g. chat applications setting the user as away, power + management features to dim screen, etc.. + </description> + <request name="get_idle_timeout"> + <arg name="id" type="new_id" interface="org_kde_kwin_idle_timeout"/> + <arg name="seat" type="object" interface="wl_seat"/> + <arg name="timeout" type="uint" summary="The idle timeout in msec"/> + </request> + </interface> + <interface name="org_kde_kwin_idle_timeout" version="1"> + <request name="release" type="destructor"> + <description summary="release the timeout object"/> + </request> + <request name="simulate_user_activity"> + <description summary="Simulates user activity for this timeout, behaves just like real user activity on the seat"/> + </request> + <event name="idle"> + <description summary="Triggered when there has not been any user activity in the requested idle time interval"/> + </event> + <event name="resumed"> + <description summary="Triggered on the first user activity after an idle event"/> + </event> + </interface> +</protocol> diff --git a/protocols/meson.build b/protocols/meson.build index 9d213f81..fa6d696c 100644 --- a/protocols/meson.build +++ b/protocols/meson.build @@ -30,6 +30,7 @@ wayland_scanner_server = generator( client_protocols = [ [wl_protocol_dir, 'stable/xdg-shell/xdg-shell.xml'], ['wlr-layer-shell-unstable-v1.xml'], + ['idle.xml'], ['wlr-input-inhibitor-unstable-v1.xml'] ] |