Fix swayidle-lock-screen with safeeyes
This commit is contained in:
@ -14,12 +14,21 @@ function has-rootful-xwayland-p {
|
||||
return 1
|
||||
}
|
||||
|
||||
function safeeyes-running-p {
|
||||
[[ "$(safeeyes --status)" = Next* ]]
|
||||
}
|
||||
|
||||
function run {
|
||||
# ensure multiple instances do not run
|
||||
mkdir -p "${LOCKFILE:h}"
|
||||
exec 4<>"${LOCKFILE}"
|
||||
flock -n 4 || exit 0
|
||||
dunstctl set-paused true
|
||||
let need_restore_safeeyes=0
|
||||
if safeeyes-running-p; then
|
||||
safeeyes --disable
|
||||
need_restore_safeeyes=1
|
||||
fi
|
||||
if [[ "${XDG_CURRENT_DESKTOP}" == 'river' ]] && has-rootful-xwayland-p; then
|
||||
swaylock ${empty_flag} --color '#000000'
|
||||
else
|
||||
@ -35,17 +44,16 @@ function run {
|
||||
swayidle -w -C /dev/null \
|
||||
timeout 15 "${(q)ENABLE_DISPLAYS} -d ${ignored_args}" \
|
||||
resume "${(q)ENABLE_DISPLAYS} {$ignored_args}" &
|
||||
# after-resume "${(q)RESET_SAFEEYES}" \
|
||||
swayidle_pid="${!}"
|
||||
else
|
||||
swayidle -w -C /dev/null \
|
||||
timeout 15 "systemctl sleep" &
|
||||
# after-resume "${(q)RESET_SAFEEYES}" \
|
||||
swayidle_pid="${!}"
|
||||
fi
|
||||
swaylock ${empty_flag} ${img_flags}
|
||||
kill "${swayidle_pid}"
|
||||
fi
|
||||
(( need_restore_safeeyes )) && safeeyes --enable
|
||||
dunstctl set-paused false
|
||||
fix_eww
|
||||
flock -u 4
|
||||
|
||||
Reference in New Issue
Block a user