diff --git a/reset-safeeyes-time b/reset-safeeyes-time new file mode 100755 index 0000000..3165443 --- /dev/null +++ b/reset-safeeyes-time @@ -0,0 +1,8 @@ +#!/usr/bin/env zsh + +local state +state="$(safeeyes --status)" +if [[ "${state}" = Next* ]]; then + safeeyes --disable + safeeyes --enable +fi diff --git a/swayidle-lock-screen b/swayidle-lock-screen index 9e22b0c..e0107ce 100755 --- a/swayidle-lock-screen +++ b/swayidle-lock-screen @@ -2,6 +2,7 @@ LOCKFILE="${HOME}/.cache/swayidle-lock-screen.lock" ENABLE_DISPLAYS="${HOME}/scripts/enable-displays-for-sleep" +RESET_SAFEEYES="${HOME}/scripts/reset-safeeyes-time" function has-rootful-xwayland-p { for pid in $(pgrep Xwayland); do @@ -32,11 +33,14 @@ function run { ignored_args+=(-i "${(q)name}") done swayidle -w -C /dev/null \ + before-sleep "${(q)RESET_SAFEEYES}" \ timeout 15 "${(q)ENABLE_DISPLAYS} -d ${ignored_args}" \ resume "${(q)ENABLE_DISPLAYS} {$ignored_args}" & swayidle_pid="${!}" else - swayidle -w -C /dev/null timeout 15 "systemctl suspend" & + swayidle -w -C /dev/null \ + before-sleep "${(q)RESET_SAFEEYES}" \ + timeout 15 "systemctl suspend" & swayidle_pid="${!}" fi swaylock ${empty_flag} ${img_flags}