Updated for multihead systems
This update takes one separate screenshot per display connected, apply all the effects, merge the padlock image and stich them in order to have one padlock image per screen
This commit is contained in:
parent
2c900118f8
commit
cfc84cac16
1 changed files with 19 additions and 6 deletions
|
@ -1,13 +1,26 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
# Approximate timeout rate in milliseconds (checked every 5 seconds).
|
# Approximate timeout rate in milliseconds (checked every 5 seconds).
|
||||||
timeout="10000"
|
timeout="10000"
|
||||||
|
|
||||||
# Take a screenshot:
|
# Take a screenshot of every screen available:
|
||||||
scrot /tmp/screen.png
|
xdpyinfo -ext XINERAMA | sed '/^ head #/!d;s///' |
|
||||||
|
{
|
||||||
|
while IFS=' :x@,' read i w h x y; do
|
||||||
|
INDEX=$i
|
||||||
|
import -window root -crop ${w}x$h+$x+$y /tmp/head_$i.png
|
||||||
|
done
|
||||||
|
|
||||||
# Add the lock to the swirled and blurred image:
|
# Add the lock to the swirled and blurred images:
|
||||||
[[ -f ~/.config/i3/lock.png ]] && convert /tmp/screen.png -paint 1 -swirl 360 ~/.config/i3/lock.png -gravity center -composite -matte /tmp/screen.png
|
for i in `seq 0 ${INDEX}`;
|
||||||
|
do
|
||||||
|
convert /tmp/head_${i}.png -paint 1 -swirl 360 ~/.config/i3/lock.png -gravity center -composite -matte /tmp/head_${i}.png;
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
#Combine all screen images into one big image
|
||||||
|
convert +append /tmp/head_*.png /tmp/screen.png
|
||||||
|
|
||||||
# Pause music (mocp and mpd):
|
# Pause music (mocp and mpd):
|
||||||
mocp -P
|
mocp -P
|
||||||
|
@ -18,6 +31,6 @@ i3lock -e -f -c 000000 -i /tmp/screen.png
|
||||||
|
|
||||||
# If still locked after $timeout milliseconds, turn off screen.
|
# If still locked after $timeout milliseconds, turn off screen.
|
||||||
while [[ $(pgrep -x i3lock) ]]; do
|
while [[ $(pgrep -x i3lock) ]]; do
|
||||||
[[ $timeout -lt $(xssstate -i) ]] && xset dpms force off
|
[[ $timeout -lt $(xssstate -i) ]] && xset dpms force off
|
||||||
sleep 5
|
sleep 5
|
||||||
done
|
done
|
||||||
|
|
Loading…
Reference in a new issue