Change sway idle behavior to use defacto standard

`sway-audio-idle-inhibit`
This commit is contained in:
Martin Larsson 2025-05-26 17:36:27 +02:00
parent 2cb74f3ad7
commit ab4cb57f53
3 changed files with 3 additions and 25 deletions

View file

@ -43,7 +43,8 @@ input "type:pointer" {
pointer_accel 0
}
exec_always --no-startup-id ~/.config/sway/idle.sh
# Enables inhibit_idle when playing audio
exec sway-audio-idle-inhibit
exec_always --no-startup-id ~/.config/sway/sway_unfocused_effects.py

View file

@ -1,24 +0,0 @@
#!/bin/bash
# Track the current inhibition state
inhibited=0
# Check player status and adjust idle inhibition
while true; do
if playerctl status | grep -q "Playing"; then
if [ "$inhibited" -eq 0 ]; then
swaymsg "inhibit_idle on"
inhibited=1
fi
else
if [ "$inhibited" -eq 1 ]; then
swaymsg "inhibit_idle off"
inhibited=0
fi
fi
sleep 5 # Check every 5 seconds
done &
exec swayidle -w \
timeout 300 'swaylock -f -c 000000' \
timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
before-sleep 'swaylock -f -c 000000'