ENH allow screenlocker to also suspend
This commit is contained in:
parent
1d53b6562c
commit
2d2e6fac76
|
@ -1,6 +1,8 @@
|
|||
#! /bin/bash
|
||||
|
||||
## lock the screen using i3lock
|
||||
## lock the screen using i3lock (and maybe suspend)
|
||||
|
||||
## usage: screenlock [SUSPEND]
|
||||
|
||||
# WORKAROUND make the date show up in the right place on 2+ monitor setups
|
||||
# I want it to only show up on the primary screen, so use xrandr to get the
|
||||
|
@ -12,6 +14,7 @@ xpos=$(echo "$geometry" | cut -f2 -d" ")
|
|||
xoffset=$(("$xpos" + "$width" / 2))
|
||||
datepos="$xoffset:600"
|
||||
|
||||
# lock and fork so we can suspend with the screen locked
|
||||
i3lock --color=000000 \
|
||||
--pass-media-keys \
|
||||
--nofork \
|
||||
|
@ -42,4 +45,17 @@ i3lock --color=000000 \
|
|||
--wrong-size=72 \
|
||||
--verif-size=72 \
|
||||
--radius=300 \
|
||||
--ring-width=25
|
||||
--ring-width=25 &
|
||||
|
||||
# suspend if we want, and if this machine is currently using a battery
|
||||
batpath=/sys/class/power_supply/BAT0/status
|
||||
|
||||
if [ -f "$batpath" ] && \
|
||||
[ "$(cat $batpath)" == "Discharging" ] && \
|
||||
[ "$1" == "true" ]; then
|
||||
systemctl suspend
|
||||
fi
|
||||
|
||||
# block until the screen is unlocked (since xss-lock expects the locker to exit
|
||||
# only when unlocked)
|
||||
wait
|
||||
|
|
Loading…
Reference in New Issue