From e7c02d972617826149d360b76eece07d89e59c9c Mon Sep 17 00:00:00 2001 From: xsmh Date: Fri, 28 Feb 2025 18:05:56 +0300 Subject: [PATCH] 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> --- .local/bin/sysact | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.local/bin/sysact b/.local/bin/sysact index 64c2f320..85488e5e 100755 --- a/.local/bin/sysact +++ b/.local/bin/sysact @@ -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 ;;