rice/mpv/scripts/xscreensaver.lua
2022-02-13 14:34:37 -08:00

25 lines
651 B
Lua

-- this script periodically deactivates xscreensaver
-- when video playback is active
local function heartbeat()
if mp.get_property_native("pause") or
mp.get_property_native("idle") or
not mp.get_property_native("vo-configured") then
return
end
mp.command_native_async(
{
name = "subprocess",
args = { "xscreensaver-command", "-deactivate" },
capture_stdout = true,
},
function () end)
end
mp.add_periodic_timer(60, heartbeat)
for _, prop in ipairs({"pause", "idle", "vo-configured"}) do
mp.observe_property(prop, nil, heartbeat)
end