Enhance locking mechanism (#1446)

This is a (subjectively) preferable behavior for locking the system.

- Pause all media players and mute audio when the system is locked. Unmute after unlocking.

Co-authored-by: Shahram <80352285+ShahramMohammed@users.noreply.github.com>
This commit is contained in:
xsmh 2025-02-28 18:05:56 +03:00 committed by GitHub
parent 53f1df79e5
commit e7c02d9726
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -13,8 +13,18 @@ wmpid(){ # This function is needed if there are multiple instances of the window
echo "${tree%%)*}"
}
lock(){
mpc pause
pauseallmpv
wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
kill -44 $(pidof dwmblocks)
slock
wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
kill -44 $(pidof dwmblocks)
}
case "$(printf "🔒 lock\n🚪 leave $WM\n♻ renew $WM\n🐻 hibernate\n🔃 reboot\n🖥shutdown\n💤 sleep\n📺 display off" | dmenu -i -p 'Action: ')" in
'🔒 lock') slock ;;
'🔒 lock') lock ;;
"🚪 leave $WM") kill -TERM "$(wmpid)" ;;
"♻️ renew $WM") kill -HUP "$(wmpid)" ;;
'🐻 hibernate') slock $ctl hibernate -i ;;